public string GetPreParameter(List <ColumnInfo> keys, string numPara) { StringPlus stringPlus = new StringPlus(); StringPlus stringPlus2 = new StringPlus(); stringPlus.AppendSpaceLine(3, this.DbParaHead + "Parameter[] parameters" + numPara + " = {"); int num = 0; foreach (ColumnInfo current in keys) { stringPlus.AppendSpaceLine(5, string.Concat(new string[] { "new ", this.DbParaHead, "Parameter(\"", this.preParameter, current.ColumnName, "\", ", this.DbParaDbType, ".", CodeCommon.DbTypeLength(this.dbobj.DbType, current.TypeName, ""), ")," })); stringPlus2.AppendSpaceLine(3, string.Concat(new string[] { "parameters", numPara, "[", num.ToString(), "].Value = ", current.ColumnName, ";" })); num++; } stringPlus.DelLastComma(); stringPlus.AppendLine("};"); stringPlus.Append(stringPlus2.Value); return(stringPlus.Value); }
/// <summary> /// 得到Update()的代码 /// </summary> /// <param name="DbName"></param> /// <param name="_tablename"></param> /// <param name="_key"></param> /// <param name="ModelName"></param> /// <returns></returns> public string CreatUpdate() { if (ModelSpace == "") { //ModelSpace = "ModelClassName"; ; } StringPlus strclass = new StringPlus(); StringPlus strclass1 = new StringPlus(); StringPlus strclass2 = new StringPlus(); strclass.AppendSpaceLine(2, "/// <summary>"); strclass.AppendSpaceLine(2, "/// 更新一条数据"); strclass.AppendSpaceLine(2, "/// </summary>"); strclass.AppendSpaceLine(2, "public void Update(" + ModelSpace + " model)"); strclass.AppendSpaceLine(2, "{"); strclass.AppendSpaceLine(3, "StringBuilder strSql=new StringBuilder();"); strclass.AppendSpaceLine(3, "strSql.Append(\"update " + _tablename + " set \");"); int n = 0; foreach (ColumnInfo field in Fieldlist) { string columnName = field.ColumnName; string columnType = field.TypeName; string Length = field.Length; bool IsIdentity = field.IsIdentity; bool isPK = field.IsPK; strclass1.AppendSpaceLine(5, "new " + DbParaHead + "Parameter(\"" + preParameter + columnName + "\", " + DbParaDbType + "." + CodeCommon.DbTypeLength(dbobj.DbType, columnType, Length) + "),"); strclass2.AppendSpaceLine(3, "parameters[" + n + "].Value = model." + columnName + ";"); n++; if (field.IsIdentity || field.IsPK || (Keys.Contains(field))) { continue; } strclass.AppendSpaceLine(3, "strSql.Append(\"" + columnName + "=" + preParameter + columnName + ",\");"); } //去掉最后的逗号 strclass.DelLastComma(); strclass.AppendLine("\");"); strclass.AppendSpaceLine(3, "strSql.Append(\" where " + GetWhereExpression(Keys) + "\");"); strclass.AppendSpaceLine(3, "" + DbParaHead + "Parameter[] parameters = {"); strclass1.DelLastComma(); strclass.Append(strclass1.Value); strclass.AppendLine("};"); strclass.AppendLine(strclass2.Value); strclass.AppendSpaceLine(3, "" + DbHelperName + ".ExecuteSql(strSql.ToString(),parameters);"); strclass.AppendSpaceLine(2, "}"); return(strclass.ToString()); }
/// <summary> /// 得到Add()的代码 /// </summary> public string CreatAdd() { if (ModelSpace == "") { //ModelSpace = "ModelClassName"; ; } StringPlus strclass = new StringPlus(); StringPlus strclass1 = new StringPlus(); StringPlus strclass2 = new StringPlus(); StringPlus strclass3 = new StringPlus(); StringPlus strclass4 = new StringPlus(); strclass.AppendLine(); strclass.AppendSpaceLine(2, "/// <summary>"); strclass.AppendSpaceLine(2, "/// 增加一条数据"); strclass.AppendSpaceLine(2, "/// </summary>"); string strretu = "void"; if ((dbobj.DbType == "SQL2000" || dbobj.DbType == "SQL2005" || dbobj.DbType == "SQL2008") && (IsHasIdentity)) { strretu = "int"; } //方法定义头 string strFun = CodeCommon.Space(2) + "public " + strretu + " Add(" + ModelSpace + " model)"; strclass.AppendLine(strFun); strclass.AppendSpaceLine(2, "{"); strclass.AppendSpaceLine(3, "StringBuilder strSql=new StringBuilder();"); strclass.AppendSpaceLine(3, "strSql.Append(\"insert into " + _tablename + "(\");"); strclass1.AppendSpace(3, "strSql.Append(\""); int n = 0; foreach (ColumnInfo field in Fieldlist) { string columnName = field.ColumnName; string columnType = field.TypeName; bool IsIdentity = field.IsIdentity; string Length = field.Length; if (field.IsIdentity) { continue; } strclass3.AppendSpaceLine(5, "new " + DbParaHead + "Parameter(\"" + preParameter + columnName + "\", " + DbParaDbType + "." + CodeCommon.DbTypeLength(dbobj.DbType, columnType, Length) + "),"); strclass1.Append(columnName + ","); strclass2.Append(preParameter + columnName + ","); strclass4.AppendSpaceLine(3, "parameters[" + n + "].Value = model." + columnName + ";"); n++; } //去掉最后的逗号 strclass1.DelLastComma(); strclass2.DelLastComma(); strclass3.DelLastComma(); strclass1.AppendLine(")\");"); strclass.Append(strclass1.ToString()); strclass.AppendSpaceLine(3, "strSql.Append(\" values (\");"); strclass.AppendSpaceLine(3, "strSql.Append(\"" + strclass2.ToString() + ")\");"); if ((dbobj.DbType == "SQL2000" || dbobj.DbType == "SQL2005" || dbobj.DbType == "SQL2008") && (IsHasIdentity)) { strclass.AppendSpaceLine(3, "strSql.Append(\";select @@IDENTITY\");"); } strclass.AppendSpaceLine(3, "" + DbParaHead + "Parameter[] parameters = {"); strclass.Append(strclass3.Value); strclass.AppendLine("};"); strclass.AppendLine(strclass4.Value); //重新定义方法头 if ((dbobj.DbType == "SQL2000" || dbobj.DbType == "SQL2005" || dbobj.DbType == "SQL2008") && (IsHasIdentity)) { strclass.AppendSpaceLine(3, "object obj = " + DbHelperName + ".GetSingle(strSql.ToString(),parameters);"); strclass.AppendSpaceLine(3, "if (obj == null)"); strclass.AppendSpaceLine(3, "{"); strclass.AppendSpaceLine(4, "return 1;"); strclass.AppendSpaceLine(3, "}"); strclass.AppendSpaceLine(3, "else"); strclass.AppendSpaceLine(3, "{"); strclass.AppendSpaceLine(4, "return Convert.ToInt32(obj);"); strclass.AppendSpaceLine(3, "}"); } else { strclass.AppendSpaceLine(3, "" + DbHelperName + ".ExecuteSql(strSql.ToString(),parameters);"); } strclass.AppendSpace(2, "}"); return(strclass.ToString()); }
/// <summary> /// 生成sql语句中的参数列表(例如:用于Add Exists Update Delete GetModel 的参数传入) /// </summary> /// <param name="keys"></param> /// <returns></returns> public string GetPreParameter(List <ColumnInfo> keys) { StringPlus strclass = new StringPlus(); StringPlus strclass2 = new StringPlus(); strclass.AppendSpaceLine(3, "" + DbParaHead + "Parameter[] parameters = {"); int n = 0; foreach (ColumnInfo key in keys) { strclass.AppendSpaceLine(5, "new " + DbParaHead + "Parameter(\"" + preParameter + "" + key.ColumnName + "\", " + DbParaDbType + "." + CodeCommon.DbTypeLength(dbobj.DbType, key.TypeName, "") + "),"); strclass2.AppendSpaceLine(3, "parameters[" + n.ToString() + "].Value = " + key.ColumnName + ";"); n++; } strclass.DelLastComma(); strclass.AppendLine("};"); strclass.Append(strclass2.Value); return(strclass.Value); }
public string CreatUpdate() { if (ModelSpace == "") { //ModelSpace = "ModelClassName"; ; } StringPlus stringPlus = new StringPlus(); StringPlus stringPlus2 = new StringPlus(); stringPlus.AppendSpaceLine(2, "/// <summary>"); stringPlus.AppendSpaceLine(2, "/// " + this.Languagelist["summaryUpdate"].ToString()); stringPlus.AppendSpaceLine(2, "/// </summary>"); stringPlus.AppendSpaceLine(2, "public bool Update(" + this.ModelSpace + " model)"); stringPlus.AppendSpaceLine(2, "{"); stringPlus.AppendSpaceLine(3, "int rowsAffected=0;"); stringPlus.AppendSpaceLine(3, this.DbParaHead + "Parameter[] parameters = {"); int num = 0; foreach (ColumnInfo current in this.Fieldlist) { string columnName = current.ColumnName; string typeName = current.TypeName; string length = current.Length; stringPlus.AppendSpaceLine(5, string.Concat(new string[] { "new ", this.DbParaHead, "Parameter(\"", this.preParameter, columnName, "\", ", this.DbParaDbType, ".", CodeCommon.DbTypeLength(this.dbobj.DbType, typeName, length), ")," })); stringPlus2.AppendSpaceLine(3, string.Concat(new object[] { "parameters[", num, "].Value = model.", columnName, ";" })); num++; } stringPlus.DelLastComma(); stringPlus.AppendLine("};"); stringPlus.AppendLine(stringPlus2.Value); stringPlus.AppendSpaceLine(3, string.Concat(new string[] { this.DbHelperName, ".RunProcedure(\"", this.ProcPrefix, this._tablename, "_Update\",parameters,out rowsAffected);" })); stringPlus.AppendSpaceLine(3, "if (rowsAffected > 0)"); stringPlus.AppendSpaceLine(3, "{"); stringPlus.AppendSpaceLine(4, "return true;"); stringPlus.AppendSpaceLine(3, "}"); stringPlus.AppendSpaceLine(3, "else"); stringPlus.AppendSpaceLine(3, "{"); stringPlus.AppendSpaceLine(4, "return false;"); stringPlus.AppendSpaceLine(3, "}"); stringPlus.AppendSpaceLine(2, "}"); return(stringPlus.Value); }
public string CreatAdd() { if (ModelSpace == "") { //ModelSpace = "ModelClassName"; ; } StringPlus stringPlus = new StringPlus(); StringPlus stringPlus2 = new StringPlus(); stringPlus.AppendSpaceLine(2, "/// <summary>"); stringPlus.AppendSpaceLine(2, "/// " + this.Languagelist["summaryadd"].ToString()); stringPlus.AppendSpaceLine(2, "/// </summary>"); string text = "bool"; if ((this.dbobj.DbType == "SQL2000" || this.dbobj.DbType == "SQL2005" || this.dbobj.DbType == "SQL2008" || this.dbobj.DbType == "SQL2012") && this.IsHasIdentity) { text = "int"; if (this._keyType != "int") { text = this._keyType; } } string text2 = string.Concat(new string[] { CodeCommon.Space(2), "public ", text, " Add(", this.ModelSpace, " model)" }); stringPlus.AppendLine(text2); stringPlus.AppendSpaceLine(2, "{"); stringPlus.AppendSpaceLine(3, "int rowsAffected;"); stringPlus.AppendSpaceLine(3, this.DbParaHead + "Parameter[] parameters = {"); int num = 0; int num2 = 0; foreach (ColumnInfo current in this.Fieldlist) { string columnName = current.ColumnName; string typeName = current.TypeName; bool arg_19F_0 = current.IsIdentity; string length = current.Length; stringPlus.AppendSpaceLine(5, string.Concat(new string[] { "new ", this.DbParaHead, "Parameter(\"", this.preParameter, columnName, "\", ", this.DbParaDbType, ".", CodeCommon.DbTypeLength(this.dbobj.DbType, typeName, length), ")," })); if (current.IsIdentity) { num = num2; stringPlus2.AppendSpaceLine(3, "parameters[" + num2 + "].Direction = ParameterDirection.Output;"); num2++; } else { if ("uniqueidentifier" == typeName.ToLower()) { stringPlus2.AppendSpaceLine(3, "parameters[" + num2 + "].Value = Guid.NewGuid();"); } else { stringPlus2.AppendSpaceLine(3, string.Concat(new object[] { "parameters[", num2, "].Value = model.", columnName, ";" })); } num2++; } } stringPlus.DelLastComma(); stringPlus.AppendLine("};"); stringPlus.AppendLine(stringPlus2.Value); stringPlus.AppendSpaceLine(3, string.Concat(new string[] { this.DbHelperName, ".RunProcedure(\"", this.ProcPrefix, this._tablename, "_ADD\",parameters,out rowsAffected);" })); if ((this.dbobj.DbType == "SQL2000" || this.dbobj.DbType == "SQL2005" || this.dbobj.DbType == "SQL2008" || this.dbobj.DbType == "SQL2012") && this.IsHasIdentity) { stringPlus.AppendSpaceLine(3, string.Concat(new object[] { "return (", this._keyType, ")parameters[", num, "].Value;" })); } stringPlus.AppendSpaceLine(2, "}"); return(stringPlus.Value); }
/// <summary> /// 得到Update()的代码 /// </summary> /// <param name="DbName"></param> /// <param name="_tablename"></param> /// <param name="_key"></param> /// <param name="ModelName"></param> /// <returns></returns> public string CreatUpdate() { if (ModelSpace == "") { ModelSpace = "ModelClassName";; } StringPlus strclass = new StringPlus(); StringPlus strclass2 = new StringPlus(); strclass.AppendSpaceLine(2, "/// <summary>"); strclass.AppendSpaceLine(2, "/// 更新一条数据"); strclass.AppendSpaceLine(2, "/// </summary>"); strclass.AppendSpaceLine(2, "public void Update(" + ModelSpace + " model)"); strclass.AppendSpaceLine(2, "{"); strclass.AppendSpaceLine(3, "int rowsAffected;"); strclass.AppendSpaceLine(3, "" + DbParaHead + "Parameter[] parameters = {"); int n = 0; foreach (ColumnInfo field in Fieldlist) { string columnName = field.ColumnName; string columnType = field.TypeName; string Length = field.Length; //bool IsIdentity = field.IsIdentity; //bool isPK = field.IsPK; strclass.AppendSpaceLine(5, "new " + DbParaHead + "Parameter(\"" + preParameter + columnName + "\", " + DbParaDbType + "." + CodeCommon.DbTypeLength(dbobj.DbType, columnType, Length) + "),"); strclass2.AppendSpaceLine(3, "parameters[" + n + "].Value = model." + columnName + ";"); n++; } strclass.DelLastComma(); strclass.AppendLine("};"); strclass.AppendLine(strclass2.Value); strclass.AppendSpaceLine(3, "" + DbHelperName + ".RunProcedure(\"" + ProcPrefix + _tablename + "_Update" + "\",parameters,out rowsAffected);"); strclass.AppendSpaceLine(2, "}"); return(strclass.Value); }
/// <summary> /// 得到Add()的代码 /// </summary> /// <param name="ExistsMaxId">是否有GetMaxId()生成主健</param> public string CreatAdd() { if (ModelSpace == "") { ModelSpace = "ModelClassName";; } StringPlus strclass = new StringPlus(); StringPlus strclass2 = new StringPlus(); strclass.AppendSpaceLine(2, "/// <summary>"); strclass.AppendSpaceLine(2, "/// 增加一条数据"); strclass.AppendSpaceLine(2, "/// </summary>"); string strretu = "void"; if ((dbobj.DbType == "SQL2000" || dbobj.DbType == "SQL2005") && (IsHasIdentity)) { strretu = "int"; } //方法定义头 string strFun = CodeCommon.Space(2) + "public " + strretu + " Add(" + ModelSpace + " model)"; strclass.AppendLine(strFun); strclass.AppendSpaceLine(2, "{"); strclass.AppendSpaceLine(3, "int rowsAffected;"); strclass.AppendSpaceLine(3, "" + DbParaHead + "Parameter[] parameters = {"); int nkey = 0; int n = 0; foreach (ColumnInfo field in Fieldlist) { string columnName = field.ColumnName; string columnType = field.TypeName; bool IsIdentity = field.IsIdentity; string Length = field.Length; strclass.AppendSpaceLine(5, "new " + DbParaHead + "Parameter(\"" + preParameter + columnName + "\", " + DbParaDbType + "." + CodeCommon.DbTypeLength(dbobj.DbType, columnType, Length) + "),"); if (field.IsIdentity) { nkey = n; strclass2.AppendSpaceLine(3, "parameters[" + n + "].Direction = ParameterDirection.Output;"); n++; continue; } strclass2.AppendSpaceLine(3, "parameters[" + n + "].Value = model." + columnName + ";"); n++; } strclass.DelLastComma(); strclass.AppendLine("};"); strclass.AppendLine(strclass2.Value); strclass.AppendSpaceLine(3, "" + DbHelperName + ".RunProcedure(\"" + ProcPrefix + _tablename + "_ADD" + "\",parameters,out rowsAffected);"); //重新定义方法头 if ((dbobj.DbType == "SQL2000" || dbobj.DbType == "SQL2005") && (IsHasIdentity)) { strclass.AppendSpaceLine(3, "return (" + _keyType + ")parameters[" + nkey + "].Value;"); } strclass.AppendSpaceLine(2, "}"); return(strclass.Value); }
/// <summary> /// 得到Add()的代码 /// </summary> public string CreatAdd() { //if (ModelSpaceParent == "") //{ // ModelSpaceParent = "ModelClassName"; ; //} StringPlus strclass = new StringPlus(); StringPlus strclass1 = new StringPlus(); StringPlus strclass2 = new StringPlus(); StringPlus strclass3 = new StringPlus(); StringPlus strclass4 = new StringPlus(); strclass.AppendLine(); strclass.AppendSpaceLine(2, "/// <summary>"); strclass.AppendSpaceLine(2, "/// 增加一条数据,及其子表数据"); strclass.AppendSpaceLine(2, "/// </summary>"); string strretu = "void"; if ((dbobj.DbType == "SQL2000" || dbobj.DbType == "SQL2005" || dbobj.DbType == "SQL2008") && (IsHasIdentity)) { strretu = "int"; } //方法定义头 string strFun = CodeCommon.Space(2) + "public " + strretu + " Add(" + ModelSpaceParent + " model)"; strclass.AppendLine(strFun); strclass.AppendSpaceLine(2, "{"); strclass.AppendSpaceLine(3, "StringBuilder strSql=new StringBuilder();"); strclass.AppendSpaceLine(3, "strSql.Append(\"insert into " + _tablenameparent + "(\");"); strclass1.AppendSpace(3, "strSql.Append(\""); int n = 0; int nkey = 0; foreach (ColumnInfo field in FieldlistParent) { string columnName = field.ColumnName; string columnType = field.TypeName; bool IsIdentity = field.IsIdentity; string Length = field.Length; if (field.IsIdentity) { //nkey = n; continue; } strclass3.AppendSpaceLine(5, "new " + DbParaHead + "Parameter(\"" + preParameter + columnName + "\", " + DbParaDbType + "." + CodeCommon.DbTypeLength(dbobj.DbType, columnType, Length) + "),"); strclass1.Append(columnName + ","); strclass2.Append(preParameter + columnName + ","); strclass4.AppendSpaceLine(3, "parameters[" + n + "].Value = model." + columnName + ";"); n++; } if ((dbobj.DbType == "SQL2000" || dbobj.DbType == "SQL2005" || dbobj.DbType == "SQL2008") && (IsHasIdentity)) { nkey = n; strclass3.AppendSpaceLine(5, "new SqlParameter(\"@ReturnValue\",SqlDbType.Int),"); strclass4.AppendSpaceLine(3, "parameters[" + nkey.ToString() + "].Direction = ParameterDirection.Output;"); } //去掉最后的逗号 strclass1.DelLastComma(); strclass2.DelLastComma(); strclass3.DelLastComma(); strclass1.AppendLine(")\");"); strclass.Append(strclass1.ToString()); strclass.AppendSpaceLine(3, "strSql.Append(\" values (\");"); strclass.AppendSpaceLine(3, "strSql.Append(\"" + strclass2.ToString() + ")\");"); if ((dbobj.DbType == "SQL2000" || dbobj.DbType == "SQL2005" || dbobj.DbType == "SQL2008") && (IsHasIdentity)) { strclass.AppendSpaceLine(3, "strSql.Append(\";set @ReturnValue= @@IDENTITY\");"); } strclass.AppendSpaceLine(3, "" + DbParaHead + "Parameter[] parameters = {"); strclass.Append(strclass3.Value); strclass.AppendLine("};"); strclass.AppendLine(strclass4.Value); #region tran strclass.AppendSpaceLine(3, "List<CommandInfo> sqllist = new List<CommandInfo>();"); strclass.AppendSpaceLine(3, "CommandInfo cmd = new CommandInfo(strSql.ToString(), parameters);"); strclass.AppendSpaceLine(3, "sqllist.Add(cmd);"); strclass.AppendSpaceLine(3, "StringBuilder strSql2;"); strclass.AppendSpaceLine(3, "foreach (" + ModelSpaceSon + " models in model." + ModelNameSon + "s)"); strclass.AppendSpaceLine(3, "{"); StringPlus strclass11 = new StringPlus(); StringPlus strclass21 = new StringPlus(); StringPlus strclass31 = new StringPlus(); StringPlus strclass41 = new StringPlus(); //新的增加 strclass.AppendSpaceLine(4, "strSql2=new StringBuilder();"); strclass.AppendSpaceLine(4, "strSql2.Append(\"insert into " + _tablenameson + "(\");"); strclass11.AppendSpace(4, "strSql2.Append(\""); int ns = 0; foreach (ColumnInfo field in FieldlistSon) { string columnName = field.ColumnName; string columnType = field.TypeName; bool IsIdentity = field.IsIdentity; string Length = field.Length; if (field.IsIdentity) { continue; } strclass31.AppendSpaceLine(6, "new " + DbParaHead + "Parameter(\"" + preParameter + columnName + "\", " + DbParaDbType + "." + CodeCommon.DbTypeLength(dbobj.DbType, columnType, Length) + "),"); strclass11.Append(columnName + ","); strclass21.Append(preParameter + columnName + ","); strclass41.AppendSpaceLine(4, "parameters2[" + ns + "].Value = models." + columnName + ";"); ns++; } strclass11.DelLastComma(); strclass21.DelLastComma(); strclass31.DelLastComma(); strclass11.AppendLine(")\");"); strclass.Append(strclass11.ToString()); strclass.AppendSpaceLine(4, "strSql2.Append(\" values (\");"); strclass.AppendSpaceLine(4, "strSql2.Append(\"" + strclass21.ToString() + ")\");"); //if (IsHasIdentity) //{ // strclass.AppendSpaceLine(4, "strSql2.Append(\";select @@IDENTITY\");"); //} strclass.AppendSpaceLine(4, "" + DbParaHead + "Parameter[] parameters2 = {"); strclass.Append(strclass31.Value); strclass.AppendLine("};"); strclass.AppendLine(strclass41.Value); //end新的增加 strclass.AppendSpaceLine(4, "cmd = new CommandInfo(strSql2.ToString(), parameters2);"); strclass.AppendSpaceLine(4, "sqllist.Add(cmd);"); strclass.AppendSpaceLine(3, "}"); #endregion //重新定义方法头 if ((dbobj.DbType == "SQL2000" || dbobj.DbType == "SQL2005" || dbobj.DbType == "SQL2008") && (IsHasIdentity)) { strclass.AppendSpaceLine(3, DbHelperName + ".ExecuteSqlTranWithIndentity(sqllist);"); strclass.AppendSpaceLine(3, "return (" + _keyType + ")parameters[" + nkey + "].Value;"); } else { strclass.AppendSpaceLine(3, "" + DbHelperName + ".ExecuteSqlTran(sqllist);"); } strclass.AppendSpace(2, "}"); return(strclass.ToString()); }
public string CreatUpdate(string tabName, string ModelName, List <ColumnInfo> Fieldlist, List <ColumnInfo> Keys, int num) { StringPlus stringPlus = new StringPlus(); StringPlus stringPlus2 = new StringPlus(); StringPlus stringPlus3 = new StringPlus(); StringPlus stringPlus4 = new StringPlus(); stringPlus.AppendSpaceLine(3, "StringBuilder strSql" + num + "=new StringBuilder();"); stringPlus.AppendSpaceLine(3, string.Concat(new object[] { "strSql", num, ".Append(\"update ", tabName, " set \");" })); int num2 = 0; if (Fieldlist.Count == 0) { Fieldlist = Keys; } List <ColumnInfo> list = new List <ColumnInfo>(); foreach (ColumnInfo current in Fieldlist) { string columnName = current.ColumnName; string typeName = current.TypeName; string length = current.Length; bool arg_C6_0 = current.IsIdentity; bool arg_CE_0 = current.IsPrimaryKey; if (current.IsIdentity || current.IsPrimaryKey || Keys.Contains(current)) { list.Add(current); } else { if (!(typeName.ToLower() == "timestamp")) { stringPlus2.AppendSpaceLine(5, string.Concat(new string[] { "new ", this.DbParaHead, "Parameter(\"", this.preParameter, columnName, "\", ", this.DbParaDbType, ".", CodeCommon.DbTypeLength(this.dbobj.DbType, typeName, length), ")," })); stringPlus3.AppendSpaceLine(3, string.Concat(new object[] { "parameters", num, "[", num2, "].Value = model.", columnName, ";" })); num2++; stringPlus4.AppendSpaceLine(3, string.Concat(new object[] { "strSql", num, ".Append(\"", columnName, "=", this.preParameter, columnName, ",\");" })); } } } foreach (ColumnInfo current2 in list) { string columnName2 = current2.ColumnName; string typeName2 = current2.TypeName; string length2 = current2.Length; bool arg_2A0_0 = current2.IsIdentity; bool arg_2A8_0 = current2.IsPrimaryKey; stringPlus2.AppendSpaceLine(5, string.Concat(new string[] { "new ", this.DbParaHead, "Parameter(\"", this.preParameter, columnName2, "\", ", this.DbParaDbType, ".", CodeCommon.DbTypeLength(this.dbobj.DbType, typeName2, length2), ")," })); stringPlus3.AppendSpaceLine(3, string.Concat(new object[] { "parameters", num, "[", num2, "].Value = model", ModelName, ".", columnName2, ";" })); num2++; } if (stringPlus4.Value.Length > 0) { stringPlus4.DelLastComma(); stringPlus4.AppendLine("\");"); } else { stringPlus4.AppendLine("#warning 系统发现缺少更新的字段,请手工确认如此更新是否正确! "); foreach (ColumnInfo current3 in Fieldlist) { string columnName3 = current3.ColumnName; stringPlus4.AppendSpaceLine(3, string.Concat(new object[] { "strSql", num, ".Append(\"", columnName3, "=", this.preParameter, columnName3, ",\");" })); } if (Fieldlist.Count > 0) { stringPlus4.DelLastComma(); stringPlus4.AppendLine("\");"); } } stringPlus.Append(stringPlus4.Value); stringPlus.AppendSpaceLine(3, string.Concat(new object[] { "strSql", num, ".Append(\" where ", CodeCommon.GetWhereParameterExpression(Keys, true, this.dbobj.DbType), "\");" })); stringPlus.AppendSpaceLine(3, string.Concat(new object[] { this.DbParaHead, "Parameter[] parameters", num, " = {" })); stringPlus2.DelLastComma(); stringPlus.Append(stringPlus2.Value); stringPlus.AppendLine("};"); stringPlus.AppendLine(stringPlus3.Value); return(stringPlus.ToString()); }
public string CreatAdd(string tabName, string ModelName, List <ColumnInfo> Fieldlist, int num) { StringPlus stringPlus = new StringPlus(); StringPlus stringPlus2 = new StringPlus(); StringPlus stringPlus3 = new StringPlus(); StringPlus stringPlus4 = new StringPlus(); StringPlus stringPlus5 = new StringPlus(); stringPlus.AppendSpaceLine(3, "StringBuilder strSql" + num + "=new StringBuilder();"); stringPlus.AppendSpaceLine(3, string.Concat(new object[] { "strSql", num, ".Append(\"insert into ", tabName, "(\");" })); stringPlus2.AppendSpace(3, "strSql" + num + ".Append(\""); int num2 = 0; foreach (ColumnInfo current in Fieldlist) { string columnName = current.ColumnName; string typeName = current.TypeName; bool arg_CF_0 = current.IsIdentity; string length = current.Length; bool arg_E0_0 = current.Nullable; if (!current.IsIdentity) { stringPlus4.AppendSpaceLine(5, string.Concat(new string[] { "new ", this.DbParaHead, "Parameter(\"", this.preParameter, columnName, "\", ", this.DbParaDbType, ".", CodeCommon.DbTypeLength(this.dbobj.DbType, typeName, length), ")," })); stringPlus2.Append(columnName + ","); stringPlus3.Append(this.preParameter + columnName + ","); if ("uniqueidentifier" == typeName.ToLower()) { stringPlus5.AppendSpaceLine(3, string.Concat(new object[] { "parameters", num, "[", num2, "].Value = Guid.NewGuid();" })); } else { stringPlus5.AppendSpaceLine(3, string.Concat(new object[] { "parameters", num, "[", num2, "].Value = model", ModelName, ".", columnName, ";" })); } num2++; } } stringPlus2.DelLastComma(); stringPlus3.DelLastComma(); stringPlus4.DelLastComma(); stringPlus2.AppendLine(")\");"); stringPlus.Append(stringPlus2.ToString()); stringPlus.AppendSpaceLine(3, "strSql.Append(\" values (\");"); stringPlus.AppendSpaceLine(3, "strSql.Append(\"" + stringPlus3.ToString() + ")\");"); stringPlus.AppendSpaceLine(3, string.Concat(new object[] { this.DbParaHead, "Parameter[] parameters", num, " = {" })); stringPlus.Append(stringPlus4.Value); stringPlus.AppendLine("};"); stringPlus.AppendLine(stringPlus5.Value); return(stringPlus.ToString()); }