日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

一个简单的反射拷贝一份新的实体类

發布時間:2025/6/17 编程问答 28 豆豆
生活随笔 收集整理的這篇文章主要介紹了 一个简单的反射拷贝一份新的实体类 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
有時候我們需要復制一個實體類,而又不希望兩個使用同一個內存地址,我用了很簡單的反射來實現這種功能:)

/**////?<summary>
????????
///?設置實體對象的修改屬性
????????
///?</summary>
????????
///?<param?name="obj"></param>
????????
///?<returns></returns>

????????public?void?CloneEntityObject(object?srcObj,?object?desObj)
????????
{
????????????
if?(srcObj.Equals(desObj))
????????????
{
????????????????
return;
????????????}

????????????
if?(srcObj.GetType()?!=?desObj.GetType())
????????????
{
????????????????
return;
????????????}

????????????System.Reflection.PropertyInfo[]?info?
=?srcObj.GetType().GetProperties();
????????????
foreach?(System.Reflection.PropertyInfo?property?in?info)
????????????
{
????????????????desObj.GetType().GetProperty(property.Name).SetValue(desObj,
????????????????????srcObj.GetType().GetProperty(property.Name).GetValue(srcObj,?
null),?null);
????????????}

????????}


也可以將實體類直接繼承ICloneable接口,并用如上方法來實現Clone()方法.
現在有不少架構直接使用自動代碼生成器,也可以不使用反射直接每個屬性值進行拷貝亦可。

總結

以上是生活随笔為你收集整理的一个简单的反射拷贝一份新的实体类的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。