反射调用DLL 返回类的问题
有两个项目   项目A   为   DLL   
 项目A 
 using   System;   
 namespace   CheShidll 
 { 
 	///    <summary>  
 	///   Class1   的摘要说明。 
 	///    </summary>  
 	public   class   Class1 
 	{ 
 		public   List   ReceiveMoMessage(string   str) 
 		{ 
 			List   li=new   List(); 
 			li.Content= "aaa "+str; 
 			return   li; 
 		} 
 	} 
 	public   class   List 
 	{ 
 		public   string   Content; 
 	} 
 } 
 然后我在项目B中调用项目A 
 Assembly   dss   =   Assembly.LoadFile(@ "D:\net1.0\CheShidll\bin\Debug\ "+filename);//读取程序集   
 foreach   (Type   type   in   dss.GetTypes()) 
 { 
                MethodInfo   m   =   type.GetMethod( "ReceiveMoMessage ");      //实例方法 
                if   (m   !=   null) 
                { 
 	object   o   =   Activator.CreateInstance(type); 
 	List   li=new   List(); 
                            li=(List)m.Invoke(o,   new   object[]   { "1234 "}); 
                   } 
 } 
 (项目B也有List类   而且是一样的) 
 问题:在   li=(List)m.Invoke(o,   new   object[]   { "1234 "});这句 
 提示:指定的转换无效。   
 请问我应该怎么解决这个问题? 
 (当我在DLL里返回string类型,用string   s=(List)m.Invoke(o,   new   object[]   { "1234 "});调用时就没问题) 
------解决方案--------------------public class List 
 这个即使在两个项目里都有,即使名字一样,那也是两个类,不能互相转换的。 
 你可以把这个类放到另外的一个项目C中,A和B都引用这个C