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企业应用研发
查看全文
相关阅读:
IDEA Inspections详解
IDEA 阿里编码规范插件
IDEA Save Actions插件
IDEA Lombok插件
设计模式-简单工厂模式与工厂模式
DAO设计模式
Jcrop+strut2+jsp实现图片剪切
Spring的Bean的作用域
Spring的事务机制
windows 下 Redis 主从 读写分离
原文地址:https://www.cnblogs.com/syveen/p/297176.html
最新文章
如何将自己的代码提交到码云
常用Feed流架构实现
JWT使用例子
mysql 8 设置允许远程连接 You are not allowed to create a user with GRANT
VMware CentOS 7 NAT方式连接网络配置
RabbitMQ在秒杀场景中的简单应用
Docker安装Minio存储服务器详解
如何画好架构图
Centos7安装JDK
test
热门文章
HashMap与redis在项目中的应用
MEF依赖注入实例
ASP.NET 添加Ninject依赖注入
HttpRuntime.Cache在ASP.NET的使用
.NET下添加Redis
.NET 依赖注入Autofac实践
netoffice添加新的slide
Java 的Integer、int与new Integer到底怎么回事?
mybatis全配置理解
JDK1.8 Stream之toMap和groupingBy全参数的使用
Copyright © 2011-2022 走看看