在为WCF服务生成类型时,.NET加载了查找另一个程序集版本

Ark*_*Ark 7 .net c# asp.net wcf wsdl

尝试在Visual Studio 2013中向ASP.NET Web应用程序添加服务引用时出现此错误.我在项目中引用了Microsoft.Owin.Security版本2.1.0.0.但是我很沮丧他为什么要寻找2.0.1.0版本?

无法导入wsdl:portType详细信息:运行WSDL导入扩展时抛出异常:System.ServiceModel.Description.DataContractSerializerMessageContractImporter错误:无法加载文件或程序集'Microsoft.Owin.Security,Version = 2.0.1.0,Culture = neutral, PublicKeyToken = 31bf3856ad364e35'或其依赖项之一.该系统找不到指定的文件.

Ram*_*are 0

实际安装和引用的程序集版本会因各种因素而有所不同。无论如何,您可以将绑定重定向到您想要的版本。参考这个链接

在您的情况下,您必须将以下行添加到web.config下面configuration

<runtime>
  <assemblyBinding xmlns="urn:schemas-microsoft-com:asm.v1">
    <dependentAssembly>
      <assemblyIdentity name="'Microsoft.Owin.Security" publicKeyToken="31bf3856ad364e35" culture="neutral"/>
      <bindingRedirect oldVersion="0.0.0.0-2.1.0.0" newVersion="2.0.1.0"/>
    </dependentAssembly>
    </assemblyBinding>
</runtime>
Run Code Online (Sandbox Code Playgroud)