Почему Moles выбирает SharePoint.Behaviors для .NET v4.0, когда все остальное - v3.5? - PullRequest
1 голос
/ 21 октября 2011

У меня есть ClassLibrary для доступа к объектной модели SharePoint 2010 в рамках более крупного решения для песочницы SP 2010. Все проекты ориентированы на .NET v3.5 ( не профиль клиента). Затем есть проект ASP.NET WebApplication, используемый для тестирования ClassLibrary - все еще .NET v3.5.

Я пытаюсь использовать Microsoft Moles для того, чтобы насмехаться над SPContext.Current - который я уже знаю и уже использовал - и я сталкиваюсь с этой проблемой: при каждой сборке среда moles всегда выбирает Microsoft.SharePoint.Behaviors DLL для время выполнения v4.0.30319, чтобы скопировать его в MolesAssemblies. Вместо этого для Microsoft.SharePoint.Moles он выбирает v2.0.50727.

Между прочим это просто библиотеки DLL, найденные в C:\Program Files\Microsoft Moles\MolesAssemblies\Microsoft.SharePoint\14.0.0.0__71e9bce111e9429c. Но я помню, что во время установки Moles были созданы как родинки v4.0, так и v3.5.

Есть ли способ сообщить Кротам, чтобы построить и / или скопировать DLL для среды выполнения v3.5? Или есть какое-то особое место, где я должен был построить и хранить их, чтобы позволить Молам забрать их?

Каким-то образом я также посмотрел на временный файл опций, созданный во время сборки (...\obj\Debug\Moles\moles.args), и последние опции на самом деле /clrversion:v2.0.50727 /clrversion2 /targetframeworkversion:v3.5.

Среда: Windows 7 64bit, VS 2010 SP1, Moles v0.94.51023.0 - .NET v4.0.30319 (установка только Moles, без Pex).

...