And*_*ray 5 c# unit-testing assembly-resolution
对于我正在现代化的项目,我有一套由应用程序的原始开发人员提供的单元测试。在我的现代化改造早期,它们是完全绿色运行的。然而,它们已经变成红色,但大多数情况下都有相同的例外:
例外:
System.IO.FileLoadException: Could not load file or assembly 'MyApp.BusinessLayer, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null' or one of its dependencies. Access is denied.
at MyApp.SomeExecutable.SomeClass.SomeMethod(args)
at MyApp.UnitTests.SomeExecutableFixture.CanValidateSomething() in [place of invocation of SomeClass.SomeMethod]
Run Code Online (Sandbox Code Playgroud)
异常没有内部异常。
从我所看到的,这发生在任何引用MyApp.BusinessLayer程序集中定义的东西的方法中,友好的错误消息通知我无法加载......显然是由于拒绝访问。
我尝试了以下方法来访问程序集:
fuslogvw.exe,并在运行时运行测试以了解绑定过程。没有信息出现;就好像在 Visual Studio 2015 中运行测试对 Fusion Log Viewer 完全不可见!即使在重新启动后,Fusion Log Viewer 也没有关于正在发生的程序集绑定的信息。(感谢@AndrewAu、@CodeCaster)问题:除了授予自己对该文件夹的完全访问权限之外,我还可以做些什么来解决此问题FileLoadException,尤其是如果这是访问权限问题?我所做的一切难道不应该解决访问问题,如果这是真的吗?
| 归档时间: |
|
| 查看次数: |
1347 次 |
| 最近记录: |