輕量級ORM框架 第二篇:Dapper
阿新 • • 發佈:2019-01-03
ansi reat 圖片 nbsp HERE multiple csharp ret rom
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