zoukankan
html css js c++ java
一个简单的反射拷贝一份新的实体类
有时候我们需要复制一个实体类,而又不希望两个使用同一个内存地址,我用了很简单的反射来实现这种功能:)
/**/
///
<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()方法.
现在有不少架构直接使用自动代码生成器,也可以不使用反射直接每个属性值进行拷贝亦可。
愿一路奔跑不退缩,到目前一直从事.Net的B/S,C/S企业应用研发
查看全文
相关阅读:
互联网架构 高可用和高并发 (转)
mysql数据库索引
SQL小结
limit小结
JDK8 元空间
OpenStack基础知识
shell 发送所有内容到会话
通过word给博客园发布文章教程
centos7.4安装过程
Zabbix 调整告警发送的内容格式
原文地址:https://www.cnblogs.com/syveen/p/297176.html
最新文章
利用node、express初始化项目
mac系统下安装、启动、停止mongodb
常用的 CSS 技巧
ApplicationLoader登录失败
关于APIcloud中的登录与注册的简单实现
字节(byte)、二进制、字节流、字符流相关概念分析
Java中堆内存和栈内存有什么区别
JAVA中的getBytes()方法
fastJson与jackson性能对比
ByteArrayInputStream的作用,和BufferedOutputStream 的区别
热门文章
解决InputStream中数据读取不完整问题
bufferedinputstream FileInputStream inputstream的比较
java.io.ObjectInputStream类详解
IDEA更改Maven项目的webapp的版本号
配置文件的属性ENC加密
一致性(转)
架构必备(转)
SQL优化(转)
数据库设计规范(转)
数据库系列
Copyright © 2011-2022 走看看