码迷,mamicode.com
首页 > 移动开发 > 详细

Dapper简单实用和反射的初步尝试

时间:2016-05-11 13:00:13      阅读:511      评论:0      收藏:0      [点我收藏+]

标签:

方便测试,创建Console项目,将SqlMapper.cs文件添加到项目中

所有内容我都写在Program.cs文件中

首先做好准备工作,定义连接字符串、打开数据库连接方法、实体类、查询方法。

     // 定义连接字符串
        static private readonly string sqlconnection =
                 "Data Source=192.168.1.10;Initial Catalog=Test;User Id=sa;Password=sa;";

        // 打开数据库连接
        static public SqlConnection OpenConnection()
        {
            SqlConnection connection = new SqlConnection(sqlconnection);
            connection.Open();
            return connection;
        }

        //获取SendMcpDetail对象的集合。
        static public IEnumerable<SendMcpDetail> SelectSendMcpDetails()
        {
            using (IDbConnection conn = OpenConnection())
            {
                const string query = "select * from SendMcpDetail order by SendMessageID desc";
                return conn.Query<SendMcpDetail>(query, null);
            }
        }

        // 实体类 SendMcpDetail
        public class SendMcpDetail
        {
            public string FormNo  { get; set; }
            public string SignNo  { get; set; }
            public string SignName { get; set; }
            public string SendPersonID { get; set; }
            public string SendMessageID { get; set; }
            public DateTime CreatTime { get; set; }
            
        }

这样简单的数据访问已经搭好,查询数据一句话就可以搞定

List<SendMcpDetail> AllSendMcpDetail = SelectSendMcpDetails().ToList<SendMcpDetail>();   

查出所有的数据后开始做展示,这里我想程序自动获取实体类的属性和拿到查询后对应属性的值,用到了简单的反射技术

foreach (SendMcpDetail cat in AllSendMcpDetail) // 遍历查询个数
{
  foreach (var item in cat.GetType().GetProperties(BindingFlags.Instance |
                BindingFlags.Public | BindingFlags.NonPublic))  // 通过反射获取类中所有属性并遍历
  {
    Console.WriteLine(item.Name +":"+item.GetValue(cat,null));  // 类中所有属性和读取该属性的值
  }
  Console.WriteLine("-------------------------------");
}

反射也是第一次用到,感觉并不是很复杂,但是平时确实用的很少,反射可以动态获取程序集中的属性,方法,并可以访问、修改属性值和调用方法。

多做练习上手实践。

Dapper简单实用和反射的初步尝试

标签:

原文地址:http://www.cnblogs.com/leeafei/p/5481094.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!