轻量级ORM框架 第二篇:Dapper

Posted BabyR

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了轻量级ORM框架 第二篇:Dapper相关的知识,希望对你有一定的参考价值。

 1. in操作

IDbConnection connection = new SqlConnection("Data Source=.;Initial Catalog=DapperTest;Integrated Security=True;MultipleActiveResultSets=True");
            var sql = "select * from Users where Email in @emails";
            var info = connection.Query<Users>(sql, new { emails = new string[2] { "1QQ", "7QQ" } });

2. 多条sql执行

            IDbConnection connection = new SqlConnection("Data Source=.;Initial Catalog=DapperTest;Integrated Security=True;MultipleActiveResultSets=True");  
            var sql = "select * from Product; select * from Users";
            var multiReader = connection.QueryMultiple(sql);
            var productList = multiReader.Read<Product>();
            var userList = multiReader.Read<Users>();
            multiReader.Dispose();

3.多表join操作

       var sql = @"select  p.ProductName,p.CreateTime,u.UserName
                        from Product as p
                        join Users as u
                        on p.UserID = u.UserID
                        where p.CreateTime > \'2019-1-1\'; ";

            var result = connection.Query<Product, Users,Product>(sql,
                                    (product, users) =>
                                    {
                                        product.UsersOwner = users;
                                        return product;
                                    },splitOn:"UserName");

  

 

4.支持存储过程

use DapperTest
set ansI_nulls on
go
set quoted_identifier on
go
create proc [dbo].[sp_GetUsers] 
@id int  
as 
begin  
select * from Users where UserID = @id ;  
end

 

var info = connection.Query<Users>("sp_GetUsers", new { id = 10 },
                                       commandType: CommandType.StoredProcedure);

 

以上是关于轻量级ORM框架 第二篇:Dapper的主要内容,如果未能解决你的问题,请参考以下文章

轻量级ORM框架——第二篇:Dapper中的一些复杂操作和inner join应该注意的坑

.NET轻量级ORM框架Dapper入门精通

.NET轻量级ORM框架Dapper入门精通

轻量级ORM框架——第一篇:Dapper快速学习

ORM之轻量级框架--Dapper

ORM 轻量级框架 Dapper(介绍)