SharePoint Foundation 2010自定义DLL - 编译为64位(x64)?

时间:2014-06-25 18:16:18

标签: .net sharepoint dll sharepoint-2010 .net-3.5

我为SharePoint Foundation 2010开发了一个IHttpModule并将其部署到GAC并将其添加到我的Web应用程序的web.config中,它运行正常。

我计划开发另一个DLL以在多个SharePoint项目之间共享,例如事件接收者,应用程序页面,Web部件等。

我只是想知道这些DLL是否需要编译为64位(x64) - 对于SharePoint和DLL以及在线文档来说,我有点新手不规则。

请有人可以为我确认这一点,理想情况下,我可以链接到一些关于为SharePoint开发DLL的好文档。欢迎任何其他建议。

1 个答案:

答案 0 :(得分:1)

我建议将任何SharePoint明确地编译为x64。也就是说,理论上你可以使用AnyCPU(默认),但是如果事情最终使用非托管代码,那么最好消除任何猜测并明确确保一切都是x64。如果一切都是.net,那么AnyCPU将会起作用。

请注意,至少某些版本的Visual Studio会将控制台应用程序显式创建为x86,这会在引用SharePoint DLL时导致无用的错误消息。 (可以说,对于一次性工具,直接使用SharePoint DLL的控制台应用很少见)

此外,如果使用明确为x86的依赖项(某些SQLite,我认为是SQL Server Compact),则会出现问题。

TLDR:我推荐x64,AnyCPU最常见,x86很糟糕。这适用于SP2010及更高版本,因为这些产品仅为64位,而SP2007则具有32位和64位版本。