Ваш вопрос
Имеет ли. Net Загрузка ядра сборок из глобального кэша сборок (GA C)?
Краткий ответ:
Нет
Длинный ответ:
Когда вы используете сборку с набором CopyLocal = false
, это означает, что сборка ( Файл .dll) не будет помещен в выходной каталог того, что вы только что создали.
Здесь. Net Ядро работает иначе, чем. Net Framework:
In . Net Framework
Как только отсутствующая сборка используется где-то в вашем исполняемом коде, среда выполнения попытается найти ее, найти и загрузить. Для. Net Framework это происходит очень специфическим c способом , который включает в себя загрузку его из GA C (Global Assembly Cache), когда он доступен.
И вот что делает dotnetcore:
Эти приложения dotnetcore разработаны как самостоятельные и простые в обращении, и не хотят полагаться на свою среду. Вы доставляете все, что им нужно знать, вместе с ними. Таким образом, эти приложения не будут go искать пропавшие dll и не будут искать GA C. Это обычный метод развертывания, и он называется «автономное развертывание»
Однако существует нечто, называемое хранилище пакетов времени выполнения , которое может помочь в оптимизации развертывание, определив, что ваше. Net Базовое приложение не является «самодостаточным», а развернуто на определенной «платформе (= где определен набор библиотек для присутствия). Это называется ». зависимое развертывание "
Если вам нужна дополнительная информация о зависимом от платформы развертывании. Net Основные приложения
Посмотрите на это Есть Есть ли GA C эквивалент для. NET Core?