C#反射中最最最基本的东西
2011-01-20 22:46
183 查看
just look below
Model.Person类如下:
static void Main(string[] args) { //Model.Person p1 = new Model.Person(); //Model.Person p2 = new Model.Person(); //p1.Name = "Bill Gates"; //p2.Name = "Paul Jobs"; //p1.Work(); //p2.Work(); //Console.WriteLine(p1.WhatIsYourName()); //Console.WriteLine(p2.WhatIsYourName()); System.Reflection.Assembly asm = System.Reflection.Assembly.LoadFrom(@"c:\users\polaris\documents\visual studio 2010\Projects\ConsoleApplicationReflection\Model\bin\Debug\Model.dll"); object obj1 = asm.CreateInstance("Model.Person"); object obj2 = asm.CreateInstance("Model.Person"); Type type = obj1.GetType(); System.Reflection.PropertyInfo pi; pi = type.GetProperty("Name"); pi.SetValue(obj1, "Bill Gates", null); pi.SetValue(obj2, "Paul Jobs", null); System.Reflection.MethodInfo mi; mi = type.GetMethod("Work"); mi.Invoke(obj1, null); mi.Invoke(obj2,null ); mi = type.GetMethod("WhatIsYourName"); string val1 = mi.Invoke(obj1, null).ToString(); string val2 = mi.Invoke(obj2, null).ToString(); Console.WriteLine(val1); Console.WriteLine(val2); }
Model.Person类如下:
public class Person { public string Code { get; set; } public string Name { get; set; } public int Age { get; set; } public DateTime Birthday { get; set; } public void Work() { Console.WriteLine("working......"); } public string WhatIsYourName() { return string.Format( "I'm {0}",this.Name); } }
相关文章推荐
- 【转】 c# 反射 的一些基本知识
- 使用C#反射机制从UnityEditor扒东西
- 【C#】反射基本用法
- C# 反射机制(1)查看类型基本信息
- C# 反射相关的东西
- c# 反射 的一些基本知识
- C#之反射又是什么东西
- C# 中利用反射机制拷贝类的字段和属性(拷贝一个类对象的所有东西付给另一个类对象,而不是付给引用地址)
- c#对sql server的基本操作
- C# 并行编程 之 PLINQ 基本使用
- c#的反射机制
- C# 匿名类型的基本特征
- C#利用反射动态调用DLL并返回结果,和获取程序集的信息
- c# 反射的用法
- C# 反射创建对象,包括创建引用外部程序集类的实例
- C#反射实例调用
- C# 使用 Binder 类自定义反射
- C#中使用反射显示程序集的所有类型和属性
- C#2008与.NET 3.5 高级程序设计读书笔记(16)-- 类型反射、晚期绑定和基于特性的编程
- java程序员学C#基本语法两个小时搞定(对比学习)