Несколько решений с использованием общих DLL могут вызвать хаос при втянутых решениях

sharepoint.stackexchange https://sharepoint.stackexchange.com/questions/48

Вопрос

Проблема: Многочисленные решения с использованием общего DLL могут вызвать хаос, когда отдельные решения втянуты.

Пример: У вас есть Helper DLL Web Part DLL, используемый всем вашим кодом веб -части. Если вы отодвигаете решение, содержащее ссылку на этот DLL, то запись SafeControl удаляется из соответствующего веб -приложения, и все ваши веб -части начинают сбой. Или даже лучше, DLL полностью удален из GAC.

Решение: Я не знаю? Кому ты рассказываешь.

Это было полезно?

Решение

Когда у вас есть общие/общие компоненты, такие как Helper DLL, о котором вы говорите, которые используются в нескольких решениях в организации. Моя рекомендация состоит в том, чтобы собрать их в качестве «фреймворчатого решения», которое развернуто на серверах, в конечном итоге из «решений на основе функций».

Таким образом, вы «функции решения» разработаны в знании, что «структура» всегда доступна.

SharePoint всегда убирает/удаляет то, что вы добавили в пакете решений, несмотря на то, что у него нет ничего встроенного для обнаружения общих компонентов.

Другие советы

Метод, который я использую объединить все сборки в один, используя Ilmerge как часть сборки, перед упаковкой

Это делает его пуленепробиваемым, так как тогда кто -то невозможно каким -то образом удалить зависимые сборки.

Да, это общая проблема в развертывании SharePoint. Мое решение состоит в том, чтобы изменить номер версии для Helper DLL-S. Так что даже у вас есть несколько вспомогательных DLL-S в GAC, что не должно быть большой проблемой. Кончик:SolutionInfo

Мы назначаем каждую общую сборку в один файл WSP. Затем мы используем зависимости от функций, чтобы описать, использует ли кто -либо из них общий компонент, и имеем правило, которое общие зависимости не могут быть удалены, если от него зависят какие -либо активные функции.

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

Команды, как правило, копируют и вставляют сборки в свои собственные файлы WSP или удаляют любые файлы WSP, которые они используют, не обращая внимания на правила.

Лицензировано под: CC-BY-SA с атрибуция
Не связан с sharepoint.stackexchange
scroll top