Я уже много лет занимаюсь веб-приложениями .NET, и я никогда не использую GAC?Неужели мне действительно нужно использовать глобальный кэш сборок (GAC)?
Что мне не хватает? Или мне лучше избегать этого?
Я уже много лет занимаюсь веб-приложениями .NET, и я никогда не использую GAC?Неужели мне действительно нужно использовать глобальный кэш сборок (GAC)?
Что мне не хватает? Или мне лучше избегать этого?
GAC полезен, если вы регистрируете библиотеки, которые собираетесь использовать повторно. Это не обязательное использование для запуска WebApp без разделяемых библиотек.
GAC предназначен, главным образом, для хранения разделяемых библиотек, особенно если для вашего приложения требуется определенная версия. Таким образом, я мог установить FooLib 1.0 и FooLib 2.0 на один и тот же компьютер, а приложения, в которых требуется либо один, могли найти те, которые они хотят. Кажется, что веб-приложения не используют множество внешних библиотек.
В другом примере SSIS требует, чтобы ваши пользовательские инструменты находились в GAC. Большая боль.
Как и Vincent, GAC важна главным образом для сторонних поставщиков библиотек, которые хотят поддерживать обслуживание независимо от клиентских приложений. Другими словами, если в библиотеке есть ошибка, вы можете обновить библиотеку и исправить все приложения, которые используют библиотеку, не зная, какие приложения они есть и т. Д.
На практике большинство приложений .NET (так далеко) являются веб-приложениями, поэтому выясняется, что он в основном полезен для Microsoft, поскольку у немногих других людей есть обычная способность выпускать обновления для конечных компьютеров.