Exemple #1
0
 public IInsertable <T> CallEntityMethod(Expression <Action <T> > method)
 {
     if (this.InsertObjs.HasValue())
     {
         var expression = (LambdaExpression.Lambda(method).Body as LambdaExpression).Body;
         Check.Exception(!(expression is MethodCallExpression), method.ToString() + " is not method");
         var callExpresion = expression as MethodCallExpression;
         UtilMethods.DataInoveByExpresson(this.InsertObjs, callExpresion);
         this.InsertBuilder.DbColumnInfoList = new List <DbColumnInfo>();
         Init();
     }
     return(this);
 }
Exemple #2
0
 public IUpdateable <T> CallEntityMethod(Expression <Action <T> > method)
 {
     ThrowUpdateByExpression();
     if (this.UpdateObjs.HasValue())
     {
         var oldColumns = this.UpdateBuilder.DbColumnInfoList.Select(it => it.PropertyName).ToList();
         var expression = (LambdaExpression.Lambda(method).Body as LambdaExpression).Body;
         Check.Exception(!(expression is MethodCallExpression), method.ToString() + " is not method");
         var callExpresion = expression as MethodCallExpression;
         UtilMethods.DataInoveByExpresson(this.UpdateObjs, callExpresion);
         this.UpdateBuilder.DbColumnInfoList = new List <DbColumnInfo>();
         Init();
         this.UpdateBuilder.DbColumnInfoList = this.UpdateBuilder.DbColumnInfoList.Where(it => oldColumns.Contains(it.PropertyName)).ToList();
     }
     return(this);
 }