利用反射,给model类赋值
来源:互联网 发布:c语言字节是什么 编辑:程序博客网 时间:2024/05/17 01:47
/// <summary>
/// 给model类自动赋值
/// </summary>
/// <param name="sqlstring">获取查询一个model实例的sql语句</param>
/// <param name="obj">model实例对象</param>
/// <returns></returns>
public object selmodel(string sqlstring,object obj)
{
DataTable dtsell = lcommonbll.GetTable(sqlstring);
int count = dtsell.Rows.Count;
if (count == 0)
{
return null;
}
else
{
DataRow dr = dtsell.Rows[0];
#region 另一种方法
//foreach (DataColumn col in dr.Table.Columns)
//{
// PropertyInfo pt = seller.GetType().GetProperty(col.ColumnName);
// if (String.IsNullOrEmpty(dr[col.ColumnName].ToString()))
// {
// break;
// }
// else
// {
// pt.SetValue(seller, dtsell.Rows[0][0], null);
// }
//}
#endregion
foreach (System.Reflection.PropertyInfo pi in obj.GetType().GetProperties())
{
if (pi.CanWrite)
{
try
{
if (dtsell.Rows[0][pi.Name]!=null)
{
pi.SetValue(obj, dtsell.Rows[0][pi.Name], null);
}
else
{
pi.SetValue(obj, null, null);
}
}
catch
{
pi.SetValue(obj, null, null);
}
}
}
return obj;
}
}
.CS调用
Seller seller = new Seller();//实体类
bind BIND = new bind();//绑定方法类
seller = (Seller)BIND.selmodel("select * from seller where SID=2", seller);//赋值
- 利用反射,给model类赋值
- 利用反射快速给Model实体赋值
- 利用反射快速给Model实体赋值
- 利用反射快速给Model实体赋值
- 利用反射快速给Model实体赋值(二)
- 利用“反射”给类的属性赋值。
- 利用runtime给model属性赋值
- C#利用反射简化给类字段赋值
- c# 利用反射动态给实体类对象赋值
- c# 利用反射动态给实体类对象赋值
- 读取配置文件,利用反射给类属性赋值,
- 利用反射快速给Model实体赋
- C#利用反射给实体属性赋值
- 利用反射给对象的属性赋值的例子
- 第一篇:利用反射技术给私有字段赋值
- C# 可以利用反射给只读属性赋值吗?
- [深入学习C#]利用反射给对象赋值
- C#中利用反射循环给一些字段赋值
- 曲线拟合
- poj1107
- JS 双人小游戏
- Say Hello To Everyone!
- C/C++ byte或者char数组转int值
- 利用反射,给model类赋值
- web.config
- 字符串前面+'L'
- c语言中的lvalue和rvalue
- 大B是bite(字节),小b是bit(位),1B=8b
- setsockopt详解
- 翻译:测试成熟度模型集成(TMMi)(13)
- 结构体偏移量
- c#中怎样实现字符全角半角转换