我正在尝试.CreateInstance()
在 C# 项目中的连接实用程序中使用,同时序列化 XML。.Unwrap()
用于解开可序列化的返回类型并获取我正在尝试创建的类型的实例。
String fileToLoad = @"D:\RPMOpen\svnCobra\conversion\aui\Model\bin\Debug\RPM_Model";
String file = Path.GetFileName(fileToLoad);
AbstractResponseMessageData response =
(AbstractResponseMessageData)Activator.CreateInstance(file, responseName).Unwrap();
我的程序集RPM_Model
在@"D:\RPMOpen\svnCobra\conversion\aui\Model\bin\Debug\RPM_Model"
加载时很好,但由于类型的原因ARC_LOGONRS
,responseName
我收到以下错误:
ConnectUtil.Execute 方法出错:无法
ARC_LOGONRS
从程序集中加载类型RPM_Model, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null
。
现在,这就是我陷入错误的原因:
1.我确实引用了错误中指定的程序集。
2.我的 GAC中没有任何内容覆盖我/Debug
文件夹中的 .dll。
3.我已确保我拥有正确版本的 .dll。
4. .dll 没有其他依赖项。
5.我的项目和.dll都有相同的目标平台。
6.我知道我正确地引用了程序集,就好像我将ARCLOGON_RS
代码放入我的代码并将鼠标悬停在它上面我看到了
类 RPM.Model.Data.ARCLOGON_RS
我可以f12
专注于它来查看它的属性。
7.我已经清理并重建了这两种解决方案。
8.该类型确实有一个公共的默认构造函数,并且该类是公共的。
9. .dll在参考节点中。
10.我确实将正确的程序集名称作为参数传递。
我的问题是,是否有人对为什么我的项目可能会抛出此错误以及如何修复它有任何其他想法,因为我已经完全用完了诊断。
非常感谢您的帮助。