c#通过反射查找接口的实现 并创造实例

来源:互联网 发布:人工智能新闻 编辑:程序博客网 时间:2024/05/23 01:26
  1. static void Main(string[] args)  
  2. {  
  3.     IUserBll userBll = null;  
  4.     //使用直接引用  
  5.     //userBll = new UserBll();  
  6.     //使用反射  
  7.     Assembly assembly = Assembly.Load("BLL");  
  8.     Type[] types = assembly.GetTypes();  
  9.     foreach (var t in types)  
  10.     {  
  11.         if (t.GetInterface("IUserBll") != null)  
  12.         {  
  13.             userBll  = (IUserBll)Activator.CreateInstance(t);  
  14.         }  
  15.     }  
  16.     if (userBll != null)  
  17.     {  
  18.         UserModel user = userBll.Get(2);  
  19.         Console.WriteLine(user.Name);  
  20.     }  
  21.       
  22.     Console.ReadKey();  
  23. }  
0 0
原创粉丝点击