1

我在 Windows Server 2010 上使用 Visual Studio 2010 和 Sharepoint 2010 服务器。我正在将 webpart 部署到在同一台服务器上运行的 Sharepoint 实例。

我的新 webpart 使用自定义库,AE.Net.Mail. 当我部署此 Web 部件时,我收到Could not load file or assembly...AE.Net.Mail. 我已经跑gacutil了,但在C:\Windows\assembly. 我确实在C:\Windows\Microsoft.NET\assembly.

现在我不确定这一点,但我认为当我的 Sharepoint 实例运行时,它只会查看C:\Windows\assembly. 这就是它无法找到图书馆的原因。我相信这是因为我的 webpart 的名称存在于C:\Windows\assembly. 它被缓存在那里,而不是在C:\Windows\Microsoft.NET\assembly.

我正在使用AE.Net.Mail Version 1.6.0.0.NET 3.5. 我认为我的 Sharepoint 服务器正在使用 3.5,尽管机器上存在 4.0。我是这么认为的,因为当我尝试使用 nuget 安装库时,我无法安装需要 .NET 4.0 的最新版本。错误说我的项目使用的是3.5。1.6.0.0 版本与 3.5 兼容

那么,你们认为发生了什么,你们认为我可以如何AE.Net.Mail进入C:\Windows\assembly?一直在这几个小时,我想不通(拖放不起作用)

多谢你们。:)

4

1 回答 1

1

从来源来看,AE.Net.Mail 不是强类型,这是 GAC 部署(和 SharePoint)所需要的。

要将二进制文件添加到 GAC,您必须从 Github 下载 AE.Net.Mail 的二进制文件,签署程序集并自行编译。这很简单,只需按照本指南http://msdn.microsoft.com/en-us/library/ms247123(v=vs.100).aspx

请记住为 .net 3.5 编译,因为这是 SP2010 支持的,它不会识别 net4 程序集

于 2013-03-31T09:31:53.250 回答