2013-12-13 2 views
4

Я создаю библиотеку классов. Эта библиотека будет развернута в GAC.Развертывание моей DLL в GAC, ссылки Другие DLL не в GAC

В моей библиотеке у меня есть ссылки на некоторые внешние зависимости. Зависимости не могут быть установлены в GAC.

Когда я развертываю свою библиотеку и использую ее, она жалуется, что не может загружать зависимости.

Как развернуть сторонние библиотеки DLL, чтобы моя сборка могла ссылаться на них?

ответ

1

Чтобы добавить сборку в GAC, вам не нужно иметь все ссылки этой сборки в GAC. Поэтому, пока приложение, использующее вашу сборку, может найти все ссылки, это не проблема.

Так что либо разворачивайте все сборки в частном порядке (в той же папке, что и приложение), либо разворачивайте их в этом GAC и разворачивайте только эту сборку обмена в частном порядке.

UPDATE

Те же правила применяются, если вы не один созданием приложения, но только при условии библиотеки.

Невозможно создать другую центральную папку, которая действует как GAC, но не является GAC.

Пользователи вашей библиотеки должны развернуть по крайней мере эту сборку в частном порядке с их приложением. Это не проблема, если вы просто предоставляете библиотеку и пользователям вашей библиотеки развертывание.

Вы не можете предоставить установщик и использовать все приложения в своей библиотеке, не требуя, чтобы они предоставляли эту сборку приложению. Обычно это не проблема для приложения .Net. Не использовать GAC делает установку в основном «xcopy deployment».

Конечно, другое решение не зависит от этой сборки.

+0

Это наоборот. Мое приложение зависит от DLL, которые нельзя развернуть в GAC. Папки приложений нет. – CamronBute

+0

Что вы имеете в виду, нет папки приложения? Где вы помещаете свой exe? Или, если это webapp, где находится ваша папка с bin? –

+0

Сборка развернута в GAC. Зависимости, скажем, сидят в «c: \ stuff» – CamronBute

Смежные вопросы