寻找要解决的策略:无法加载文件或程序集

时间:2015-03-31 10:49:37

标签: c# dependencies .net-assembly assembly-resolution

我遇到以下错误:“无法加载文件或程序集”。该错误不言而喻:Micorsoft.Owin版本2.0.0.0无法在System.Web.Http.Owin中加载。但我想使用Microsoft.Owin 3.0.0.0和System.Web.Http.Owin的dll我做的参考版本为5.2.2.0,它本身应该与Microsoft.Owin一起使用。

所以我的问题是谁引用Micorsoft.Owin版本2.0.0.0?

因此:如何找出哪个组件要求Micorsoft.Owin 2.0.0.0?

是否有针对此类问题的推荐策略?

到目前为止我尝试做的是添加绑定重定向。但这更像是一种解决方法,而不是一个很好的解决方案(而且它不起作用。):

 <dependentAssembly>
    <assemblyIdentity name="System.Web.Http.Owin" publicKeyToken="31bf3856ad364e35" culture="neutral" />
    <bindingRedirect oldVersion="0.0.0.0-5.2.2.0" newVersion="5.2.2.0" />
  </dependentAssembly>
  <dependentAssembly>
    <assemblyIdentity name="Microsoft.Owin" publicKeyToken="31bf3856ad364e35" culture="neutral" />
    <bindingRedirect oldVersion="0.0.0.0-3.0.0.0" newVersion="3.0.0.0" />
  </dependentAssembly>

1 个答案:

答案 0 :(得分:1)

您可以使用工具Fuslogvw.exe来获取装配绑定的日志,特别是装载装配的内容和位置。

它与Visual Studio一起安装,但要运行它,您需要打开Visual Studio命令提示符(like this),然后运行

fuslogvw