反射获取config实体类属性并赋值
/// <summary>
/// 将实体类存入config
/// </summary>
/// <param name="enity"></param>
public void SetValue<T>(T enity) where T : class
{
System.Xml.XmlDocument xDoc = new System.Xml.XmlDocument();
xDoc.Load(HttpContext.Current.Server.MapPath("~/xxxx.config"));
System.Xml.XmlNode xNode;
System.Xml.XmlElement xElem1;
System.Xml.XmlElement xElem2;
xNode = xDoc.SelectSingleNode("//appSettings");
System.Reflection.PropertyInfo[] properties = enity.GetType().GetProperties(System.Reflection.BindingFlags.Instance | System.Reflection.BindingFlags.Public);
foreach (System.Reflection.PropertyInfo item in properties)
{
string name = item.Name;
string value = (string)item.GetValue(enity, null);
if (item.PropertyType.IsValueType || item.PropertyType.Name.StartsWith("String"))
{
xElem1 = (System.Xml.XmlElement)xNode.SelectSingleNode("//add[@key='" + name + "']");
if (xElem1 != null) xElem1.SetAttribute("value", value);
else
{
xElem2 = xDoc.CreateElement("add");
xElem2.SetAttribute("key", name);
xElem2.SetAttribute("value", value);
xNode.AppendChild(xElem2);
}
}
}
xDoc.Save(HttpContext.Current.Server.MapPath("~/xxxx.config"));
}
反射获取config实体类属性并赋值的更多相关文章
- Android利用反射机制为实体类属性赋值
在做android项目时,有时会遇到从网络上获取json类型数据,赋值给实体类,实体类属性少可以一个一个的赋值,如果实体类有很多属性,赋值可能就要耗很长的功夫了,幸好Java给我们提供了反射机制.下面 ...
- MVC过滤器中获取实体类属性值
本文地址:http://www.cnblogs.com/outtamyhead/p/3616913.html,转载请保留本地址! 最近在项目遇到了这个问题:获取Action行参中实体类的属性值,主要的 ...
- KO ------- 表中字段名和实体类属性名不一致
-----------------------siwuxie095 KO ------- 表中字段名和实体类属性名不一致 如果数据库表中的字段名和实体类的属性名不一致,那么在查询时, 相应字段的结果就 ...
- 利用Java反射机制对实体类的常用操作工具类ObjectUtil
代码: ObjectUtil类: import java.lang.reflect.Field; import java.math.BigDecimal; import java.text.Simpl ...
- Mybatis系列(二):优化MyBatis配置文件中的配置和解决字段名与实体类属性名不相同的冲突
原文链接:http://www.cnblogs.com/xdp-gacl/p/4264301.html http://www.cnblogs.com/xdp-gacl/p/4264425.ht ...
- MyBatis学习总结(四)——解决字段名与实体类属性名不相同的冲突(转载)
本文转载自:http://www.cnblogs.com/jpf-java/p/6013307.html 在平时的开发中,我们表中的字段名和表对应实体类的属性名称不一定都是完全相同的,下面来演示一下这 ...
- mybatis框架下解决数据库中表的列的字段名和实体类属性不相同的问题
导包.... 实体类中的属性,getter,setter,tostring,构造等方法就不写了 private int id; private String orderNo; private floa ...
- MyBatis入门学习教程-解决字段名与实体类属性名不相同的冲突
在平时的开发中,我们表中的字段名和表对应实体类的属性名称不一定都是完全相同的,下面来演示一下这种情况下的如何解决字段名与实体类属性名不相同的冲突. 一.准备演示需要使用的表和数据 CREATE TAB ...
- MyBatis学习总结(四)——解决字段名与实体类属性名不相同的冲突
在平时的开发中,我们表中的字段名和表对应实体类的属性名称不一定都是完全相同的,下面来演示一下这种情况下的如何解决字段名与实体类属性名不相同的冲突. 一.准备演示需要使用的表和数据 CREATE TAB ...
随机推荐
- polya置换
UVA10294 POLYA定理的基本应用 题意:有n个珠子围成的环,有t种颜色可以染这些珠子:如果这个环可以旋转有几种办法:如果这个环可以旋转,且可以翻转,有几种办法: 参考博客 刘汝佳的分析: 等 ...
- 梯度提升树GBDT总结
提升树的学习优化过程中,损失函数平方损失和指数损失时候,每一步优化相对简单,但对于一般损失函数优化的问题,Freidman提出了Gradient Boosting算法,其利用了损失函数的负梯度在当前模 ...
- koa 实现下载文件
文件下载需要使用到koa-send这个插件,该插件是一个静态文件服务的中间件,它可以用来实现文件下载的功能. 1.下载页面 static/download.html <!DOCTYPE html ...
- Module ngx_http_rewrite_module
http://nginx.org/en/docs/http/ngx_http_rewrite_module.html Directives break if return ...
- [Python]使用pytest进行单元测试
安装pytest pipenv install pytest 验证安装的版本: pytest --version This , imported /site-packages/pytest.py 接下 ...
- linux 自动输入用户名和密码 ftp
参考文章: http://blog.sina.com.cn/s/blog_8709e3120101culd.html 方法概括; 1.echo管道 2. 利用重定向操作符command <&l ...
- 【转】实现1080P延迟低于500ms的实时超清直播传输技术
最近由于公司业务关系,需要一个在公网上能实时互动超清视频的架构和技术方案.众所周知,视频直播用 CDN + RTMP 就可以满足绝大部分视频直播业务,我们也接触了和测试了几家 CDN 提供的方案,单人 ...
- 安卓控件支持HTML标签
http://www.cnblogs.com/xqxacm/p/5092557.html
- Java内部类(2):普通的成员内部类
在成员内部类中要注意两点 第一:成员内部类中不能存在任何static的变量和方法: 第二:成员内部类是依附于外围类的,所以只有先创建了外围类才能够创建内部类. 接下来是两个例子(关键字:.this . ...
- Django之contenttypes组件
目录 一. 介绍 二. 应用场景 1. 表结构设计的演变 2. GenericForeignKey和GenericRelation 3. 测试 一. 介绍 Django包含一个contenttypes ...