遍历类的所有属性和根据属性名动态设置属性值遍历类的所有属性和根据属性名动态设置属性值
?éÀúÀàµÄËùÑ?Êô?ÒºÍ?ù??Êô?ÒÃû??Ð?ÉèÖÃÊô?ÒÖµ
ÏÈ?ñÈ?ÀàµÄType
Type type = this.GetType();
//ÔÙÓÃType.GetProperties?ñµÃPropertyInfo[],È?ºó?Í?ÉÒÔÓÃforeach ?éÀúÁË
foreach (System.Reflection.PropertyInfo PInfo in
type.GetProperties())
{
/...
遍历类的所有属性和根据属性名动态设置属性值
?éÀúÀàµÄËùÑ?Êô?ÒºÍ?ù??Êô?ÒÃû??Ð?ÉèÖÃÊô?ÒÖµ
ÏÈ?ñÈ?ÀàµÄType
Type type = this.GetType();
//ÔÙÓÃType.GetProperties?ñµÃPropertyInfo[],È?ºó?Í?ÉÒÔÓÃforeach ?éÀúÁË
foreach (System.Reflection.PropertyInfo PInfo in
type.GetProperties())
{
//ÓÃPInfo.GetValue?ñµÃÖµ
string val = Convert.ToString(PInfo.GetValue(this, null));
//?ñµÃÊô?ÒµÄÃû×Ö,ºóÃæ?Í?ÉÓÒ?ù??Ãû×ÖÅ??ÏÀ??ø????×Ò?ºÏëÓªµÄ?Ù×?
string name = PInfo.Name;
//×Ô?ºÏëÒªµÄ?Ù×?
}
?ù??Êô?ÒÃû×Ö?û??ÉèÖÃÊô?ÒÖµ?º
string PropertyName=??Username??;
object obj=Î?ÖªµÄÊ???;
//?ñÈ?Êô?Ò?ÒÏó
PropertyInfo ProInfo = this.GetType().GetProperty(PropertyName);
//?ñÈ?Êô?ÒµÄÊ???Àà?Í
Type ProType = ProInfo.PropertyType;
//ÉèÖÃÊô?ÒÖµ
ProInfo.SetValue(this, Convert.ChangeType(obj, ProType), null);
本文档为【遍历类的所有属性和根据属性名动态设置属性值】,请使用软件OFFICE或WPS软件打开。作品中的文字与图均可以修改和编辑,
图片更改请在作品中右键图片并更换,文字修改请直接点击文字进行修改,也可以新增和删除文档中的内容。
该文档来自用户分享,如有侵权行为请发邮件ishare@vip.sina.com联系网站客服,我们会及时删除。
[版权声明] 本站所有资料为用户分享产生,若发现您的权利被侵害,请联系客服邮件isharekefu@iask.cn,我们尽快处理。
本作品所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用。
网站提供的党政主题相关内容(国旗、国徽、党徽..)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。