有2个项目。两者都是 WPF 应用程序。
应用1:只提供与外部硬件的互通。为此,Application 根类中有一些公共共享类:
Public Shared Log As New clsLog
Public Shared NavigationObjectContainer As New Dictionary(Of String, Object)
第二个项目主要是GUI,也在Application根类中使用了一些公共共享类:
Public Shared Nav As New clsNavigationHelper
现在,第二个项目(GUI)引用了项目 1(硬件)并显示以下错误:
Der Typeninitialisierer für "TB_HyperTerminal.Application" hat eine Ausnahme verursacht。它是德语,但这意味着 1 类(硬件)中的应用程序对象无法找到所有共享类(如 clsLog 和 NavigationObjectContainer)。
内部异常
{"Das Objekt des Typs "FSCANT3.Application" kann nicht in Typ "TB_HyperTerminal.Application" umgewandelt werden."}
我的问题是如何解决这个问题以获得每个项目的正确程序集和正确的应用程序对象。
在寻找原因时,我已将项目 2(硬件)的类重命名为 TBHApplication,而项目 1 仍称为 Application。不,我们可以看到为什么无法进行投射: