@@ -103,6 +103,69 @@ IDapperRepository<UserInfo> userInfoRepository = new DapperRepository<UserInfo>(
103103 var user = userInfoRepository.Get(1);
104104 var result = userInfoRepository.Delete(user);
105105```
106+ ###### 分页
107+
108+ ```
109+ var result = _userRepository.From(sql =>
110+ {
111+ sql.Select()
112+ .Where(x=>x.UserName==input.UserName)
113+ .Page(input.PageIndex, input.PageSize);
114+ });
115+ ```
116+ ###### 事务
117+
118+ ```
119+ using (var dbTransaction = dapperContext.BeginTransaction())
120+ {
121+ try
122+ {
123+ var user = new UserInfo()
124+ {
125+ UserName = "chengTian",
126+ RealName = "成天",
127+ GmtCreate = DateTime.Now,
128+ GmtModified = DateTime.Now,
129+ LastLoginDate = DateTime.Now
130+ };
131+ userInfoRepository.Insert(user);
132+ userAlbumRepository.Insert(new UserAlbum
133+ {
134+ Pic = "image/one.jgp"
135+ });
136+ dapperContext.Commit();
137+ }
138+ catch (Exception ex)
139+ {
140+ dbTransaction.Rollback();
141+ }
142+ }
143+
144+ ```
145+ ###### 动态Expression
146+
147+ ```
148+ var where = DynamicWhereExpression.Init<User>();
149+ if (input.RealName != "")
150+ {
151+ where = where.And(x => x.RealName.Contains(input.RealName));
152+ }
153+ if (input.SysNo!=Guid.Empty)
154+ {
155+ where = where.And(x=>x.SysNo==input.SysNo);
156+ }
157+ if (input.SysNos.Any())
158+ {
159+ where = where.And(x=>input.SysNos.Contains(x.SysNo));
160+ }
161+ var result = _userRepository.From(sql =>
162+ {
163+ sql.Select()
164+ .Where(where)
165+ .Page(input.PageIndex, input.PageSize);
166+ });
167+ ```
168+
106169###### 支持Dapper原生操作
107170操作基本的封装都是单表的操作,可以满足一部分业务开发,有些业务场景编写sql还是比较合适的比如报表和一些复杂的查询,推荐使用原生dapper的操作
108171
0 commit comments