@@ -44,6 +44,7 @@ public interface IUntypedSqlExpression : ISqlExpression
4444 IUntypedSqlExpression UnsafeFrom ( string rawFrom ) ;
4545 IUntypedSqlExpression Where ( ) ;
4646 IUntypedSqlExpression UnsafeWhere ( string rawSql , params object [ ] filterParams ) ;
47+ IUntypedSqlExpression Ensure ( string sqlFilter , params object [ ] filterParams ) ;
4748 IUntypedSqlExpression Where ( string sqlFilter , params object [ ] filterParams ) ;
4849 IUntypedSqlExpression UnsafeAnd ( string rawSql , params object [ ] filterParams ) ;
4950 IUntypedSqlExpression And ( string sqlFilter , params object [ ] filterParams ) ;
@@ -90,6 +91,8 @@ public interface IUntypedSqlExpression : ISqlExpression
9091 IUntypedSqlExpression FullJoin < Source , Target > ( Expression < Func < Source , Target , bool > > joinExpr = null ) ;
9192 IUntypedSqlExpression CrossJoin < Source , Target > ( Expression < Func < Source , Target , bool > > joinExpr = null ) ;
9293 IUntypedSqlExpression CustomJoin ( string joinString ) ;
94+ IUntypedSqlExpression Ensure < Target > ( Expression < Func < Target , bool > > predicate ) ;
95+ IUntypedSqlExpression Ensure < Source , Target > ( Expression < Func < Source , Target , bool > > predicate ) ;
9396 IUntypedSqlExpression Where < Target > ( Expression < Func < Target , bool > > predicate ) ;
9497 IUntypedSqlExpression Where < Source , Target > ( Expression < Func < Source , Target , bool > > predicate ) ;
9598 IUntypedSqlExpression And < Target > ( Expression < Func < Target , bool > > predicate ) ;
@@ -286,6 +289,12 @@ public IUntypedSqlExpression UnsafeWhere(string rawSql, params object[] filterPa
286289 return this ;
287290 }
288291
292+ public IUntypedSqlExpression Ensure ( string sqlFilter , params object [ ] filterParams )
293+ {
294+ q . Ensure ( sqlFilter , filterParams ) ;
295+ return this ;
296+ }
297+
289298 public IUntypedSqlExpression Where ( string sqlFilter , params object [ ] filterParams )
290299 {
291300 q . Where ( sqlFilter , filterParams ) ;
@@ -554,12 +563,24 @@ public IUntypedSqlExpression Where<Target>(Expression<Func<Target, bool>> predic
554563 return this ;
555564 }
556565
566+ public IUntypedSqlExpression Ensure < Target > ( Expression < Func < Target , bool > > predicate )
567+ {
568+ q . Ensure ( predicate ) ;
569+ return this ;
570+ }
571+
557572 public IUntypedSqlExpression Where < Source , Target > ( Expression < Func < Source , Target , bool > > predicate )
558573 {
559574 q . Where ( predicate ) ;
560575 return this ;
561576 }
562577
578+ public IUntypedSqlExpression Ensure < Source , Target > ( Expression < Func < Source , Target , bool > > predicate )
579+ {
580+ q . Ensure ( predicate ) ;
581+ return this ;
582+ }
583+
563584 public IUntypedSqlExpression And < Target > ( Expression < Func < Target , bool > > predicate )
564585 {
565586 q . And ( predicate ) ;
0 commit comments