C# PropertyInfo获取属性值,复制给其他实体

复制数据:
PropertyInfo[] props = typeof(Tb_ChangedResult).GetProperties(BindingFlags.Public | BindingFlags.Instance);
Tb_ChangedResult newmodel = new Tb_ChangedResult();
newmodel.ID = Guid.NewGuid().ToString("D").ToUpper();
newmodel.TestApplyBuildingID = stringar[i];
newmodel.BuildingID = strbuild[i];

       for (int j = 0; j < props.Length; j++)
       {
            if (props[j].Name != "ID" && props[j].Name != "TestApplyBuildingID" && props[j].Name != "BuildingID")//去除之前赋值项
            {
                  MethodInfo setm = props[j].SetMethod; //考虑到扩展属性的问题,一般扩展属性没有set{},只有get{}
                  if (setm != null) //若是不为空,则是类本身的属性,并非扩展类属性
                      props[j].SetValue(newmodel, props[j].GetValue(model, null));//获取model的属性值赋值给newmodel
            }
       }
db.Tb_ChangedResult.Add(newmodel);
主要用于:循环添加数据,其中只有几项属性值不同,其他属性可以很据这样的方法获取赋值

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值