public OUpdateCommandExpression(IdentifiableExpression identifiable, Expression where, IEnumerable<FieldAssignment> assignments, Expression projector)
     : base(identifiable, where, assignments)
 {
     Projection = new ProjectionExpression(null,
         projector,
         Aggregator.GetAggregator(projector.Type, typeof(IEnumerable<>).MakeGenericType(projector.Type)));
 }
 public UpdateCommandExpression(IdentifiableExpression identifiable, Expression where, IEnumerable<FieldAssignment> assignments)
     : base(DbExpressionType.Update, typeof(int))
 {
     this.identifiable = identifiable;
     this.where = where;
     this.assignments = assignments.ToReadOnly();
 }
 public InsertCommandExpression(IdentifiableExpression identifiable, IEnumerable<FieldAssignment> assignments)
     : base(DbExpressionType.Insert, typeof(int))
 {
     this.identifiable = identifiable;
     this.assignments = assignments.ToReadOnly();
 }
 public DeleteCommandExpression(IdentifiableExpression identifiable, Expression where)
     : base(DbExpressionType.Delete, typeof(int))
 {
     this.identifiable = identifiable;
     this.where = where;
 }