public static GXUpdateArgs UpdateRange <T>(IEnumerable <T> collection, Expression <Func <T, object> > columns) { GXUpdateArgs args = new GXUpdateArgs(); args.Parent.Updated = true; foreach (var it in collection) { args.Values.Add(new KeyValuePair <object, LambdaExpression>(it, columns)); } return(args); }
/// <summary> /// Create new update expression. /// </summary> /// <param name="value">Updated value.</param> /// <param name="columns">Updated columns.</param> /// <returns>Created update attribute.</returns> public static GXUpdateArgs Update <T>(T value, Expression <Func <T, object> > columns) { if (value == null) { throw new ArgumentNullException("Invalid value"); } if (value is IEnumerable) { throw new ArgumentException("Use UpdateRange to update a collection."); } GXUpdateArgs args = new GXUpdateArgs(); args.Parent.Updated = true; args.Values.Add(new KeyValuePair <object, LambdaExpression>(value, columns)); args.Where.And <T>(q => value); return(args); }