程序集加载问题“无法从程序集 ABC 加载类型 XYZ
Assembly Load issues "Could not load type XYZ from Assembly ABC
鉴于:
解决方案中项目的命名空间示例。
- 基础名称空间
- BaseNameSpace.Reports
我意识到我需要 "collapse" Reports 命名空间并将其放入基础中。我仍然希望该项目是它自己的项目。上面项目 2 的属性如下所示:
如果将这些值更改为:
在另一个项目中使用报告的任何尝试,例如
- BaseNameSpace.AnotherProjectRoot
发布标题中的消息。有趣的是,intellisense 找到了需要的 类,但是 运行 时间加载器没有....
同一解决方案中的多个项目不能包含相同的命名空间吗?这几乎就像加载程序在一个项目中找到了基本命名空间,但不会使用另一个项目(具有不同的名称)但使用相同的命名空间...
问题
尝试更改名称空间导致编译错误是引用错误。
解决方案
右键单击每个项目并选择“属性”。单击顶部的“应用程序”按钮并确保每个项目的目标框架相同。
症状
出现此问题时的症状是:1) Intellisense 很容易找到其他项目中的方法 2) 右键单击另一个项目中引用的方法并选择“转到定义”可以正常工作。 3) 编译解决方案将显示引用错误,例如在程序集中找不到名称空间 xyz。 4) 查看每个项目中的参考文献将显示黄色警告标志,即使其他参考文献是“通过解决方案”。您尝试通过重新指向解决方案中的其他项目来进行更正,但黄色标志仍然存在。
根本原因
未知,因为我们只是更改了一个项目中的名称空间名称,该项目之前有 NONE 个这样的错误。我们从未更改过 .NET 版本!
鉴于:
解决方案中项目的命名空间示例。
- 基础名称空间
- BaseNameSpace.Reports
我意识到我需要 "collapse" Reports 命名空间并将其放入基础中。我仍然希望该项目是它自己的项目。上面项目 2 的属性如下所示:
如果将这些值更改为:
在另一个项目中使用报告的任何尝试,例如
- BaseNameSpace.AnotherProjectRoot
发布标题中的消息。有趣的是,intellisense 找到了需要的 类,但是 运行 时间加载器没有....
同一解决方案中的多个项目不能包含相同的命名空间吗?这几乎就像加载程序在一个项目中找到了基本命名空间,但不会使用另一个项目(具有不同的名称)但使用相同的命名空间...
问题
尝试更改名称空间导致编译错误是引用错误。
解决方案
右键单击每个项目并选择“属性”。单击顶部的“应用程序”按钮并确保每个项目的目标框架相同。
症状
出现此问题时的症状是:1) Intellisense 很容易找到其他项目中的方法 2) 右键单击另一个项目中引用的方法并选择“转到定义”可以正常工作。 3) 编译解决方案将显示引用错误,例如在程序集中找不到名称空间 xyz。 4) 查看每个项目中的参考文献将显示黄色警告标志,即使其他参考文献是“通过解决方案”。您尝试通过重新指向解决方案中的其他项目来进行更正,但黄色标志仍然存在。
根本原因
未知,因为我们只是更改了一个项目中的名称空间名称,该项目之前有 NONE 个这样的错误。我们从未更改过 .NET 版本!