C # Не удалось загрузить файл или сборку «Microsoft.SharePoint.Library» - PullRequest
4 голосов
/ 01 октября 2009

Я работаю на 64-битной версии Windows 7, работающей под управлением MOSS (SharePoint), это мой компьютер разработчика.

Теперь при развертывании приложения веб-службы на тестовом сервере Windows 2003 32bit (без установленного Sharepoint) я получаю эту ошибку.

Не удалось загрузить файл или сборку 'Microsoft.SharePoint.Library, версия = 12.0.0.0, культура = нейтральная, PublicKeyToken = 71e9bce111e9429c' или одна из ее зависимостей. Система не может найти указанный файл

DLL явно скопирована в каталог bin (Microsoft.Sharepoint.dll).

Есть идеи?

Ответы [ 6 ]

7 голосов
/ 01 октября 2009

Если вы используете sharepoint dll, он будет работать только на компьютере с установленным sharepoint.

Даже если вам удастся взломать его и заставить его работать, вы, вероятно, нарушите лицензионное соглашение.

5 голосов
/ 24 ноября 2010

Существует способ загрузки библиотек Sharepoint в консоли разработки с Windows XP, Vista или Seven.

Смотрите здесь: http://fernandof.wordpress.com/2008/02/11/how-to-install-the-sharepoint-2007-vs-2005-extensions-on-a-workstation/

[O] создайте следующие ключи и строковое значение:

[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Shared Tools\Web Server Extensions\12.0]

"Sharepoint"="Installed"

Вот и все! Вы обманули установщик, чтобы запустить на рабочая станция. Легко. Я также рекомендую добавить ядро ​​SharePoint сборки в [GAC] с использованием gacutil. Эти сборки можно найти по умолчанию на любом компьютере [SharePoint] в папке: C:\Program Files\Common Files\Microsoft Shared\web server extensions\12\ISAPI.

1 голос
/ 09 марта 2011

из MSDN: «Среда сборки CI для приложения« Управление обучением »не выполняет никаких тестов, для которых требуется работающий экземпляр SharePoint. Все модульные тесты используют макеты, которые заменяют фактический экземпляр SharePoint и службы. Для сборки кода и запуска модульных тестов требуется только, чтобы на сервере сборки CI установлены следующие сборки SharePoint:

Microsoft.SharePoint

Microsoft.SharePoint.Security

Microsoft.SharePoint.WorkflowActions

Поддержка ссылочных сборок "

http://msdn.microsoft.com/en-us/library/ff647619.aspx

1 голос
/ 02 октября 2009

Это почти наверняка проблема зависимости. Библиотека DLL зависит от другой библиотеки DLL, которой нет в GAC или на пути проверки. Чтобы понять это, вам понадобятся два инструмента: FUSLOGVW.EXE и Process Monitor

Fusion Log Viewer позволит вам просматривать успехи и неудачи привязки сборки при загрузке приложения. Это часть Windows SDK.

http://msdn.microsoft.com/en-us/library/e74a18c4(VS.71).aspx

Для корректной работы FUSLOGVW требуются права администратора.

Если это не сработает, другой тактикой является использование Process Monitor для определения того, какие файлы не загружаются, а какие папки ищут.

http://technet.microsoft.com/en-us/sysinternals/bb896645.aspx

Тем не менее. Без установленного SharePoint я бы не ожидал, что это сработает.

Ade

0 голосов
/ 01 октября 2009

Ну, а как насчет других dll, на которые ссылается dll Sharepoint? С длинными цепочками зависимостей может быть довольно сложно диагностировать подобные проблемы. В таких ситуациях я считаю, что программа просмотра журнала Fusion чрезвычайно полезна. Он является частью пакета SDK - откройте командную строку SDK и введите fuslogvw. Это довольно очевидно оттуда

0 голосов
/ 01 октября 2009

Не смешивайте 64-битные и 32-битные для разработки / тестирования / производства. Это никогда не будет работать надежно, если вообще.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...