相关疑难解决方法(0)

无法加载文件或程序集或其依赖项之一

我有另一个"无法加载文件或程序集或其中一个依赖项"的问题.

附加信息:无法加载文件或程序集"Microsoft.Practices.Unity,Version = 1.2.0.0,Culture = neutral,PublicKeyToken = 31bf3856ad364e35"或其依赖项之一.定位的程序集的清单定义与程序集引用不匹配.(HRESULT异常:0x80131040)

我不知道是什么导致这个或我如何调试它来找到原因.

我已经在我的解决方案目录.csproj文件中进行了搜索,以及我拥有Unity的所有地方:

参考Include ="Microsoft.Practices.Unity,Version = 2.0.414.0,Culture = neutral,PublicKeyToken = 31bf3856ad364e35,processorArchitecture = MSIL"

在我的任何项目中找不到任何与1.2.0.0相对应的参考.

任何想法我应该如何解决这个问题?

我也很欣赏如何调试这样的问题的技巧.

.net c# compiler-errors reference

224
推荐指数
16
解决办法
72万
查看次数

如何找到取决于特定依赖项的特定版本的内容?

我在运行应用程序时遇到此错误(不是在编译时):

无法加载文件或程序集'Castle.Windsor,Version = 2.1.0.0,Culture = neutral,PublicKeyToken = 407dd0808d44fbdc'或其依赖项之一.定位的程序集的清单定义与程序集引用不匹配.(HRESULT异常:0x80131040)

我的解决方案有许多项目,尽可能使用项目引用,但其中一些项目具有对外部依赖项的程序集引用.

如何轻松找出正在寻找此特定版本的项目Castle.Windsor.dll?我没有那个版本,我试图使用2.5.2(最新),所以我想找到罪魁祸首并更新它以使用最新版本.

提前谢谢了.

更新
我在下面添加了一个已清理的Fusion日志.它似乎告诉我Caliburn.Castle需求Castle.Windsor, Version=2.1.0.0(这将是一个错误,因为我使用2.5),但Fusion组装探测实际上找到了Castle.Windsor, Version=2.5.1.0.

我理解正确吗?

=== Pre-bind state information ===
LOG: User = Barney\neil
LOG: DisplayName = Castle.Windsor, Version=2.1.0.0, Culture=neutral, PublicKeyToken=407dd0808d44fbdc
 (Fully-specified)
LOG: Appbase = file:///[Debug folder of my exe]
LOG: Initial PrivatePath = NULL
LOG: Dynamic Base = NULL
LOG: Cache Base = NULL
LOG: AppName = [Filename of my exe]
Calling assembly : Caliburn.Castle, Version=1.1.0.0, Culture=neutral, PublicKeyToken=8e5891231f2ed21f.
===
LOG: …
Run Code Online (Sandbox Code Playgroud)

.net c# dll dependencies visual-studio

14
推荐指数
1
解决办法
1万
查看次数