我正在 ASP.NET Web应用程序中执行项目。我无法将对象转换为接口。这是我的代码:
str2 = myXmlTextReader.ReadInnerXml();
Type myTypeObj = testAssembly.GetType(str2);
Object obj = Activator.CreateInstance(myTypeObj);
Imapper EM = (Imapper)obj;
在Windows窗体应用程序中,我没有任何问题。以下代码也返回空值:
Imapper EM = obj as Imapper;
答案 0 :(得分:2)
您的Exam_Mapper
类型需要实施IMapper
才能使代码生效。它显然没有。无论是那个,还是你有两种类型,IMapper
和Imapper
(你在问题中使用这两个名字;可能是拼写错误),你就会混淆两者。
更新尝试这个简单示例,看看它是否有效:
interface ITest { }
class Test : ITest { }
//in a method
Object obj = new Test();
ITest test = (ITest)obj;
现在比较你的情况。有什么区别?