asp.net 反射减少代码书写量
asp.net 反射减少代码书写量
发布时间:2016-12-29 来源:查字典编辑
摘要:复制代码代码如下:publicboolAdd(Liuyanrefmodel){stringsql="insertintoliuyan(nam...

复制代码 代码如下:

public bool Add(Liuyan refmodel)

{

string sql = "insert into liuyan(name,phone,zhiwei,gongsi,addr,country,dianyou,content,adddate)values(@name,@phone,@zhiwei,@gongsi,@addr,@country,@dianyou,@content,@adddate)";

OleDbParameter[] parameters ={

new OleDbParameter("@name",OleDbType.VarChar),

new OleDbParameter("@tel",OleDbType.VarChar),

new OleDbParameter("@zhiwei",OleDbType.VarChar),

new OleDbParameter("@gongsi",OleDbType.VarChar),

new OleDbParameter("@addr",OleDbType.VarChar),

new OleDbParameter("@country",OleDbType.VarChar),

new OleDbParameter("@dianyou",OleDbType.VarChar),

new OleDbParameter("@content",OleDbType.VarChar),

new OleDbParameter("@adddate",OleDbType.VarChar)

};

parameters[0].Value=model.Xingming;

parameters[1].Value=model.Tel;

parameters[2].Value=model.Zhiwei;

parameters[3].Value=model.Gongsi;

parameters[4].Value=model.Addr;

parameters[5].Value=model.Country;

parameters[6].Value=model.Dianyou;

parameters[7].Value=model.Content;

parameters[8].Value=model.Adddate;

return sqlHelper.executeCommand(sql, parameters);

}

本文讲反射 现在就说在这段代码的哪个位置使用反射 只是本人编码过程中为了省劲突发奇想

复制代码 代码如下:

parameters[0].Value=model.Xingming;

parameters[1].Value=model.Tel;

parameters[2].Value=model.Zhiwei;

parameters[3].Value=model.Gongsi;

parameters[4].Value=model.Addr;

parameters[5].Value=model.Country;

parameters[6].Value=model.Dianyou;

parameters[7].Value=model.Content;

parameters[8].Value=model.Adddate;

当类里有很多属性的时候上面这段代码可以使用反射来赋值

复制代码 代码如下:

//使用反射记得引用using System.Reflection;命名空间

Type t = refmodel.GetType();

for (int i = 0; i < t.GetProperties().Length; i++)

{

parameters[i].Value= t.GetProperties()[i].GetValue(refmodel, null);

}

这里使用反射来获取类的所有属性

然后遍历属性并把遍历到的属性值赋给参数

当然这里是添加的方法没有model.Id

所以for循环的时候要从1开始

然后 parameters[i].Value赋值的时候i要减一 parameters[i-1].Value

这样以后写数据层的时候给参数赋值就不用苦逼的一个一个复制粘贴了

怎么样 个人小心得和大家分享

使用代码生成工具的可以无视啦

推荐文章
猜你喜欢
附近的人在看
推荐阅读
拓展阅读
相关阅读
网友关注
最新asp.net教程学习
热门asp.net教程学习
编程开发子分类