C#通俗易懂谈反射(四)

五、程序集的操作

反射应用最多的还是在Dll程序集中的使用。下面介绍如何引用一个程序集,以及怎样利用反射对程序集中的类、方法等进行操作。

//引入一个Dll并对读取其中的所有的成员
Assembly ass=Assembly.LoadFrom(@"E:\ModeTest\Agilent AG34410A.dll");  //用绝对路径的方式引用程序集DLL
Type[] Tt = ass.GetTypes();   //获取Dll中的所有的类
foreach (var item in Tt)      
{
  Console.WriteLine(item);    //输出读到的类
  MethodInfo[] mm = item.GetMethods();  //获取每个类中的所有成员信息
  foreach (var item2 in mm)
  {
      Console.WriteLine(item2);         //将所有成员信息输出
  }
  Console.WriteLine("--------------------------------------");
}

Type assmebly_type = ass.GetType("ModeTest.Libraries.Instruments.Multimeters.AG34410A_SetTimeout"); //获取到具体类
object TestAssm = Activator.CreateInstance(assmebly_type);   //调用构造函数进行类的实例化
PropertyInfo myProp = assmebly_type.GetProperty("Name");     //获取Name属性

myProp.SetValue(TestAssm, "张三");                           //修改Name属性
Console.WriteLine("Name =" + myProp.GetValue(TestAssm));     //输出
Console.WriteLine("--------------------------------------");
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值