C#反射(Reflection)对类的属性get或set值
来源:互联网 发布:软件企业生产管理 编辑:程序博客网 时间:2024/06/03 22:39
近段时间,有朋友叫Insus.NET了解一下反射(Reflection)方面的知识,反射提供了封装程序集、模块和类型的对象(Type类型)。可以使用反射动态创建类型的实例,将类型绑定到现有对象,或从现有对象获取类型并调用其方法或访问其字段和属性。如果代码中使用了属性,可以利用反射对它们进行访问。
下面的例子,是Insus.NET是练习对一个类别的属性进行set和get值。
首先写一个类,再写一个可读写的属性:
View Code
using System;using System.Collections.Generic;using System.Linq;using System.Web;/// <summary>/// Summary description for Member/// </summary>namespace Insus.NET{ public class Member { private string _Name; public string Name { get { return _Name; } set { _Name = value; } } public Member() { // // TODO: Add constructor logic here // } }}
Insus.NET一向是写asp.net程序,练习也是在站点进行。
创建一个网页,引用两个namespace:
View Code
using Insus.NET;using System.Reflection;
读写属性:
View Code
using System;using System.Collections.Generic;using System.Linq;using System.Web;using System.Web.UI;using System.Web.UI.WebControls;using Insus.NET;using System.Reflection;public partial class _Default : System.Web.UI.Page{ protected void Page_Load(object sender, EventArgs e) { //实例化类 Member objMember = new Member(); //对属性set值 PropertyInfo pi = objMember.GetType().GetProperty("Name", BindingFlags.Public | BindingFlags.Instance); if (null != pi && pi.CanWrite) { pi.SetValue(objMember, "Insus.NET", null); } //对属性get值 PropertyInfo pii = objMember.GetType().GetProperty("Name", BindingFlags.Public | BindingFlags.Instance); if (null != pii && pi.CanRead) { object obj_Name = pii.GetValue(objMember, null); Response.Write(obj_Name.ToString()); } }}
<script type="text/javascript"><!--google_ad_client = "ca-pub-1944176156128447";/* cnblogs 首页横幅 */google_ad_slot = "5419468456";google_ad_width = 728;google_ad_height = 90;//--></script><script type="text/javascript" src="http://pagead2.googlesyndication.com/pagead/show_ads.js"></script>
- C#反射(Reflection)对类的属性get或set值
- C#反射(Reflection)对类的属性get或set值 .
- 反射的set/get属性值
- C# 反射机制(reflection)实现对私有成员的访问
- 反射类的使用ReflectUtil(设置set和获取get某个类属性值)
- 反射类的使用ReflectUtil(设置set和获取get某个类属性值)
- C# 反射无法获取get set中属性
- C# get;set;属性。
- C#反射(Reflection)的应用
- C#中get与set(类的属性封装)
- C# get set 属性的理解
- Java反射实体类属性(get ,set方法)
- Java反射实体类属性(get ,set方法)
- C# get和set属性
- C# 关于反射类[System.Reflection]的一个小例子
- iOS 类的get set,属性等
- get\set用来访问类的属性。
- C#反射Reflection
- 模拟JDK动态代理(JAVA设计模式)
- 十个评委打分情况
- Asp.NetURL重写的一种方法
- TCP--三次握手及四次挥手
- 选择法排序
- C#反射(Reflection)对类的属性get或set值
- flex按钮使用背景图片
- 冒泡法排序
- hibernate_Restrictions用法
- 博文阅读《不要再拿兴趣说事》
- 制作*.bat批处理文件快速进入MySQL
- 详细介绍ASP.NET页面间数据传递的使用方法
- 用函数完成逆序排序
- Java 关键字static和final