asp.net利用反射实现给model类赋值的示例代码分析


本文摘自PHP中文网,作者黄舟,侵删。

这篇文章主要介绍了asp.net利用反射实现给model类赋值的方法,结合实例形式分析了asp.net使用反射给model类赋值的操作步骤与相关操作技巧,需要的朋友可以参考下

本文实例讲述了asp.net利用反射实现给model类赋值的方法。分享给大家供大家参考,具体如下:

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

21

22

23

24

25

26

27

28

29

30

31

32

33

34

35

36

37

38

39

40

41

42

43

44

45

46

47

48

49

50

51

52

53

54

55

/// <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调用

1

2

3

Seller seller = new Seller();//实体类

bind BIND = new bind();//绑定方法类

seller = (Seller)BIND.selmodel("select * from seller where SID=2", seller);//赋值

以上就是asp.net利用反射实现给model类赋值的示例代码分析的详细内容!

相关阅读 >>

asp.net mvc 遇到json循环调用的问题应该怎么解决?

asp.net core新建项目教程(3)_实用技巧

详解asp.net使用ajax实现分页局部刷新页面功能的代码实例

详解《asp.net》数据绑定―datalist

asp.net core project.json文件(5)_实用技巧

关于asp.net视频教程的资源分享

asp.net core mvc应用程度中如何读取当前url请求参数(querystring)的值?

解决 asp.net core mysql varchar 字符串截取实例教程

asp.net数据库密码:md5加密算法详解

asp.net core中关于webapi几种版本控制对比详解(图)

更多相关阅读请进入《asp.net》频道 >>




打赏

取消

感谢您的支持,我会继续努力的!

扫码支持
扫码打赏,您说多少就多少

打开支付宝扫一扫,即可进行扫码打赏哦

分享从这里开始,精彩与您同在

评论

管理员已关闭评论功能...