Sharepoint 找不到程序集System.ServiceModel

Sharepoint 找不到程序集System.ServiceModel,sharepoint,.net-3.5,Sharepoint,.net 3.5,我正在sharepoint上部署一个Web部件,并收到一些错误。Web部件使用Web服务中的数据,并使用Microsoft图表(Framework 3.5)显示图表。当我尝试访问它时,会出现以下错误: 无法加载文件或程序集“System.ServiceModel,Version=3.0.0.0,Culture=neutral,PublicKeyToken=b77a5c561934e089”或其依赖项之一。系统找不到指定的文件 StackTrace:在 System.Web.Services.Pr

我正在sharepoint上部署一个Web部件,并收到一些错误。Web部件使用Web服务中的数据,并使用Microsoft图表(Framework 3.5)显示图表。当我尝试访问它时,会出现以下错误:

无法加载文件或程序集“System.ServiceModel,Version=3.0.0.0,Culture=neutral,PublicKeyToken=b77a5c561934e089”或其依赖项之一。系统找不到指定的文件

StackTrace:在 System.Web.Services.Protocols.SoapHttpClientProtocol.ReadResponse(SoapClientMessage消息、WebResponse响应、Stream responseStream、Boolean异步调用)
在 System.Web.Services.Protocols.SoapHttpClientProtocol.Invoke(字符串 methodName,对象[]参数)

我尝试将System.Servicemodel.dll复制到bin文件夹并在GAC上注册,但错误没有改变。 有什么想法吗


谢谢

您的网站是否配置为使用ASP.NET 2.0.5.0

也许这篇文章会有所帮助:


尝试在sharepoint服务器上安装.NET Framework 3.5。

要扩展上述答案:


听起来你的网站是在asp.net 2.x上运行的。由于System.ServiceModel是3.x组件,因此程序集将不会加载。您需要在服务器上安装3.5,或者如果您已经将IIS设置为在3.5下运行站点,则听起来Web部件本身是根据较旧版本的System.ServiceModel程序集(可能是测试版)构建的。如果您可以访问web部件的源代码,则应根据最新的稳定版本重新编译它。否则,您必须找到与System.ServiceModel完全相同的版本,并将其注册到GAC中

编辑:您还可以尝试进入web应用程序的web.config并用以下内容替换System.ServiceModel引用:

<Reference Include="System.ServiceModel">
  <SpecificVersion>False</SpecificVersion>
</Reference>

假的

问题出在Web服务中,而不是Web部件中。 部署web服务的计算机已安装framework 2.0。 该异常已在Web部件上捕获并报告。
谢谢大家的评论。

我也遇到了类似的问题,但那是因为我的.NET框架被弄乱/损坏了,所以我将发布我的修复方法。也许这是矫枉过正,但它在没有其他办法的情况下起了作用

从获取“dotnetfx_cleanup_工具”(我认为其中一个下载链接失败,所以使用另一个)

卸载框架2.0及以上版本(我做了3.5、3.0、2.0。2.0让我重新启动)

重要提示:转到C:\WINDOWS\Microsoft.NET\Framework并删除或重命名删除的.NET版本的文件夹

然后我安装了.NETFramework2.0SP2(之后重新启动)。错误消失了。
我还安装了.NET Framework 3.5 SP1(无需重新启动即可工作),但错误仍然没有出现。

启动Visual Studio 2010命令提示符或浏览到“C:\Windows\Microsoft.NET\Framework\v4.0.30319”。并从命令提示符下运行以下命令:


aspnet_regiis.exe-iru

我在Silverlight 4应用程序中遇到了同样的问题,并通过关闭调试异常检查解决了这个问题

  Common Language Runtime exceptions
在调试中=>异常

希望有帮助


Mike

在我的开发服务器上,web部件在web.config中没有编译器部分的情况下工作正常。我尝试在web.config中添加system.codedom和compilers部分,但没有成功,因为它已经安装好了。Microsoft图表需要.net framework 3.5 SP1