2013-05-05 77 views
8

我的问题很简单,但不幸的是我无法弄清楚什么是错的。我使用Razor语法创建了一个新的MVC4 Internet应用程序项目,然后我为此解决方案添加了另一个WCF库项目。我没有对这些代码做任何改变。然而,当我加入了WCF项目作为MVC 4应用程序的服务引用,我越来越1个错误消息和3警告消息:我无法将服务参考(WCF库)添加到VS2012中的MVC4

  1. 错误4自定义工具错误:无法为服务 生成代码参考'ServiceReference1'。有关详细信息,请检查其他错误并提示 消息。 C:\用户\ VENDRE \的文档\ Visual Studio的 2012 \项目\ MvcApplication3 \ MvcApplication3 \服务 参考\ ServiceReference1 \ Reference.svcmap 11 MvcApplication3
  2. 警告1个自定义工具警告:无法导入WSDL:portType的详细信息: 的在运行一个WSDL导入扩展异常被抛出: System.ServiceModel.Description.DataContractSerializerMessageContractImporter 错误:无法加载文件或程序集“DotNetOpenAuth.AspNet, 版本= 4.0.0.0,文化=中性公钥= 2780ccd10d57b246” 或一个的依赖关系。系统找不到指定的文件 。
  3. 警告2自定义工具警告:无法导入wsdl:binding详细信息: 导入wsdl:binding所依赖的wsdl:portType时出错。 XPath来WSDL:端口类型: // WSDL:定义[@的targetNamespace =” http://tempuri.org/ ']/WSDL:portType的[@名称=' IService1' ]
  4. 警告3自定义工具警告:无法导入WSDL:端口说明:有 导入wsdl:port取决于的wsdl:绑定时出错。 XPath来WSDL:结合: // WSDL:定义[@的targetNamespace =” http://tempuri.org/ ']/WSDL:结合[@名称=' BasicHttpBinding_IService1' ]

我读了一些文章,但并没有解决我的问题。如果有人知道我的问题的答案,请告诉我。

THX。

+1

你是否试过这个http://smehrozalam.wordpress.com/2009/10/29/silverlight-update-service-reference-for-a-wcf-service-generting-empty-class/ – 2013-05-05 06:54:36

+0

是的,我试过所有的集合类型,但问题仍然存在。谢谢你的建议。 – 2013-05-05 07:03:11

+0

错误非常明显:**无法加载文件或程序集“DotNetOpenAuth.AspNet ** - 因此请确保在添加服务引用时可以使用该文件或那些文件... – 2013-05-05 07:30:47

回答

38

当您添加引用时,在高级设置中删除重用类型复选框。

+0

谢谢。我花了一个星期。 – isxaker 2013-06-05 17:40:30

+2

该解决方案效果很好,但有解释为什么这会打破它? – Tim 2013-07-18 14:22:02

+0

优秀的答案。 @Tim:我怀疑它必须与MVC4项目模板可能不包含WCF代理生成需要“重用”的某些程序集有关。 – Oliver 2013-08-19 13:28:39