public override (string Sql, List <object> Values, object ClassObject) ToSqlBinding() { StringBuilder strBuilder = new StringBuilder(); strBuilder.Append($"UPDATE {Table}"); strBuilder.Append(" SET "); int i = 0; for (i = 0; i < Columns.Count; i++) { if (i > 0) { strBuilder.Append(","); } strBuilder.AppendFormat("{0}={1}", Columns[i], $"@p{i}"); } strBuilder.Append(" WHERE "); foreach (var where in Wheres) { strBuilder.AppendFormat("{0}={1}", where.Key, $"@p{i++}"); } List <object> valueAndWhere = Values; valueAndWhere.AddRange(Wheres.Select(x => x.Value)); return(strBuilder.ToString(), valueAndWhere, ParameterObjectBuilder.CreateObjectWithValues(Values)); }
public override (string Sql, List <object> Values, object ClassObject) ToSqlBinding() { StringBuilder strBuilder = new StringBuilder(); Func <List <object>, string> Func = delegate(List <object> values) { string parameter = ""; int i = 0; values.ForEach(x => { if (!string.IsNullOrEmpty(parameter)) { parameter += ","; } parameter += $"@p{i++}"; }); return(parameter); }; strBuilder.Append($"INSERT INTO {Table}"); strBuilder.Append("("); strBuilder.Append(string.Join(",", Columns)); strBuilder.Append(")"); strBuilder.Append(" VALUES"); strBuilder.Append("("); strBuilder.Append(Func(Values)); strBuilder.Append(")"); return(strBuilder.ToString(), Values, ParameterObjectBuilder.CreateObjectWithValues(Values)); }
public QueryResult BuildWithParameters() => new QueryResult(Command.ToString(), ParameterObjectBuilder.CreateObjectWithValues(Parameters));