博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
实体copy
阅读量:6208 次
发布时间:2019-06-21

本文共 1712 字,大约阅读时间需要 5 分钟。

using System;using System.Collections.Generic;using System.Linq;using System.Reflection;using System.Text;namespace U1City.Infrastructure{    public class EntityExtension    {        public static T EntityToEntityByField
(object obj, T newObj) where T : class,new() { if (newObj == null) { newObj = new T(); } PropertyInfo[] propertyInfos = obj.GetType().GetProperties(); PropertyInfo[] newPropertyInfos = typeof(T).GetProperties(); foreach (var newPropertyInfoItem in newPropertyInfos) { foreach (var propertyInfoItem in propertyInfos) { if ( propertyInfoItem.PropertyType.FullName.Equals(newPropertyInfoItem.PropertyType.FullName) && propertyInfoItem.Name == newPropertyInfoItem.Name && propertyInfoItem.CanRead && newPropertyInfoItem.CanWrite ) { newPropertyInfoItem.SetValue(newObj, propertyInfoItem.GetValue(obj, null), null); break; } else if ( propertyInfoItem.Name == newPropertyInfoItem.Name && !propertyInfoItem.PropertyType.FullName.Equals(newPropertyInfoItem.PropertyType.FullName)) { //?? EntityToEntityByField(propertyInfoItem.GetValue(obj, null), newPropertyInfoItem.GetValue(newObj, null)); } } } return newObj; } }}

 

转载于:https://www.cnblogs.com/xmyy/articles/3458180.html

你可能感兴趣的文章
mass Framework class模块 v7
查看>>
数的乘方,简单背包,组合
查看>>
70、linux shell常用函数,head
查看>>
马踏棋盘(非递归)
查看>>
SQL Server查看表空间占用情况
查看>>
Android 设置访问WebService的timeout (转)
查看>>
制作自己的数据地图
查看>>
Android 调用系统的拨号服务实现 电话拨打功能
查看>>
IOS利用Core Text对文字进行排版
查看>>
Git Delete Last Commit
查看>>
Django实战(15):Django实现RESTful web service
查看>>
responseCode
查看>>
Beej's Guide to Network Programming
查看>>
Python常见数据结构整理
查看>>
指尖上的代码[C语言版]-<1>
查看>>
二叉树的线索
查看>>
Oracle参考<二>
查看>>
NYOJ 35
查看>>
SPOJ 1693 Coconuts
查看>>
java IO 流的学习(我们到底能走多远系列1)
查看>>