我有一個utils類庫項目,其中包括一些Sharepoint功能。該項目引用Microsoft.Sharepoint.dll
(將本地複製設置爲false)。我們有許多其他項目參考了我們的utils dll,並且每當我們構建它們時Microsoft.Sharepoint.Sandbox.dll
都被複制到這些應用程序的bin文件夾中。然後在運行任何應用程序,我得到了以下錯誤時:如何停止將Microsoft.Sharepoint.Sandbox.dll複製到我的bin文件夾中?
Could not load file or assembly 'Microsoft.Sharepoint.Sandbox' or one of its dependencies. An attempt was made to load a program with an incorrect format.
刪除DLL修復這個問題.. 有沒有辦法阻止被複制到bin文件夾這個Microsoft.Sharepoint.Sandbox.dll ? 我不想使用後期構建腳本,因爲有很多引用utils項目的項目,我們仍然需要在部署時手動刪除dll。
我可以重現如下:
1)創建一個新的解決方案
2)添加一個名爲utils的
類庫項目3)參考Microsoft.SharePoint.dll的
4 )Class1.cs:
namespace Utils
{
public class Class1
{
public void testMeth()
{
Microsoft.SharePoint.DefaultItemOpen c;
}
}
}
5)添加一個新的web項目該解決方案(WebApplication1)
6)參考的utils的項目,並嘗試運行WebApplication1
編輯: Microsoft.Sharepoint.Sandbox是一個64位的DLL,但我需要針對所有的CPU。
有沒有辦法告訴VS停止拉扯暗示引用?
其他人可以重現嗎? – woggles 2012-07-12 10:18:35
當您添加Microsoft.Sharepoint.dll時,它可能會隱式引用一個沙盒。嘗試添加一個明確的引用到沙盒,然後做一個複製本地=假。如何添加參考:http://sladescross.wordpress.com/2009/10/06/add-microsoft-sharepoint-reference-to-visual-studio/ -----這個鏈接可能有點幫助:http: //blah.winsmarts.com/2009-12-SharePoint_2010_Sandbox_solutions__Architecture_and_Restrictions.aspx – 2012-07-17 20:21:20
@colinsmith感謝您的評論和鏈接。我敢肯定,它確實有一個隱含的引用沙箱DLL,這是造成這種不便。我需要一種方法告訴VS停止太聰明,並且不要複製隱式引用。 – woggles 2012-07-17 21:33:51