【问题标题】:Could not load file or assembly not resolved无法加载文件或程序集未解析
【发布时间】:2012-01-13 07:18:58
【问题描述】:

例外是

异常:无法加载文件或程序集“Autofac,Version=2.5.1.827,Culture=neutral,PublicKeyToken=17863af14b0044da”或其依赖项之一。找到的程序集的清单定义与程序集引用不匹配。 (HRESULT 异常:0x80131040)

添加到项目中的'Autofac' dll的版本是2.5.1.827。但仍然出现上述错误。

【问题讨论】:

  • 请提供更多信息。当您收到此错误时,您想做什么?
  • 你检查过dll是否位于多个地方吗?例如在 GAC 中?

标签: .net


【解决方案1】:

启用 Fusion 日志记录以帮助查看正在加载的程序集。你可以找到很多关于这样做的文章和博客:

How to enable assembly bind failure logging (Fusion) in .NET

http://blogs.msdn.com/b/thottams/archive/2007/06/02/debugging-load-problems-using-fusion-log.aspx

【讨论】:

    【解决方案2】:

    我遇到了和你一样的问题。我的电脑意外关闭,重新启动后,我在运行我的应用程序时遇到了这个错误。我在 ASP.NET MVC3 应用程序中使用 Autofac。

    我清除了我的temporary ASP.NET files(C:\WINDOWS\Microsoft.NET\Framework\v4.0.30319\Temporary ASP.NET Files)并重新启动 IIS,一切都很好。

    【讨论】:

      【解决方案3】:

      可能是您添加了引用不同版本 Castle.Core 的 Autofac.Contrib 程序集

      我在添加对 AutofacContrib.DynamicProxy2 的引用时遇到了这个问题,当我添加最新版本的 Castle.Core 时,这个程序集引用了旧版本的 Castle.Core。

      我通过将 AutofacContrib.DynamicProxy2 的代码复制到我的解决方案(只有 2 个文件)来解决它,并且它运行良好。

      【讨论】:

        【解决方案4】:

        有时,所有 Dll 都不会复制到某个特定的 bin 文件夹中。请参阅警告并在警告中描述的特定文件夹中添加所需的 Dll。

        【讨论】:

          猜你喜欢
          • 2020-08-17
          相关资源
          最近更新 更多