public static string CreateAddMethod(int action, string table_name, List <SqlColumnInfo> colList, string model_name, string db_name) { if ((action & (int)action_type.add) == (int)action_type.add) { StringBuilder keyContent = new StringBuilder(""); StringBuilder valueContent = new StringBuilder(""); var addList = Cache_VMData.GetVMList(table_name, VMType.Add, colList.ToNotMainIdList()); for (var i = 0; i < addList.Count; i++) { var item = addList[i]; if (i == 0) { keyContent.Append(item.Name); valueContent.Append("@" + item.Name); } else { keyContent.Append(" ," + item.Name); valueContent.Append(" ,@" + item.Name); } } string addContent = string.Format(@"string insertSql = ""insert into {0}({1}) values ({2});"";", table_name, keyContent.ToString(), valueContent.ToString()); var checkList = Cache_VMData.GetAddCheckList(table_name, colList.ToNotMainIdList()); if (checkList.Count == 0) { string template = @" public bool Add{3}({0} model) {{ {1} using (IDbConnection sqlcn = ConnectionFactory.{2}) {{ return sqlcn.Execute(insertSql, model) > 0; }} }} "; return(string.Format(template, table_name, addContent.ToString(), db_name, table_name)); } else { string select_text = SqlTextHelper.CreateSelectCountSql(table_name, checkList); string template = @" public bool Add{3}({0} model) {{ {4} {1} using (IDbConnection sqlcn = ConnectionFactory.{2}) {{ int count = sqlcn.QuerySingleOrDefault<int>(selectSql, model); if(count == 0) {{ return sqlcn.Execute(insertSql, model) > 0; }} return false; }} }} "; return(string.Format(template, table_name, addContent.ToString(), db_name, table_name, select_text)); } } else { return(string.Empty); } }
public static string CreateAddMethod(int action, string table_name, List <SqlColumnInfo> colList, string model_name, string db_name) { if ((action & (int)action_type.add) == (int)action_type.add) { StringBuilder addContent = new StringBuilder(); StringBuilder valueContent = new StringBuilder(") values ("); StringBuilder addparamsContent = new StringBuilder("List<MySqlParameter> listParams = new List<MySqlParameter>();\r\n"); addContent.AppendFormat("string insertSql = \"insert into {0}(", table_name); int index = 0; var addList = Cache_VMData.GetVMList(table_name, VMType.Add, colList.ToNotMainIdList()); foreach (var item in addList) { if (index == 0) { addContent.Append(item.Name); valueContent.Append("@" + item.Name); } else { addContent.Append(" ," + item.Name); valueContent.Append(" ,@" + item.Name); } addparamsContent.AppendFormat("\t\t\tlistParams.Add(new MySqlParameter(\"@{0}\", {1}) {{ Value = model.{0} }});\r\n", item.Name, item.DbType.ToMySqlDbType()); index++; } var checkList = Cache_VMData.GetAddCheckList(table_name, colList.ToNotMainIdList()); if (checkList.Count == 0) { addContent.Append(valueContent.ToString() + ")\";"); string template = @" public bool Add{4}({0} model) {{ {1} {2} using (MySqlConnection sqlcn = ConnectionFactory.{3}) {{ return MySqlHelper2.ExecuteNonQuery(sqlcn, CommandType.Text, insertSql, listParams.ToArray()) > 0; }} }} "; return(string.Format(template, model_name, addContent.ToString(), addparamsContent.ToString(), db_name, table_name)); } else { string select_text = SqlTextHelper.CreateSelectCountSql(table_name, checkList); addContent.Append(valueContent.ToString() + ")\";"); string template = @" public bool Add{4}({0} model) {{ {1} {2} {5} using (MySqlConnection sqlcn = ConnectionFactory.{3}) {{ Object obj = MySqlHelper2.ExecuteScaler(sqlcn, CommandType.Text, selectSql, listParams.ToArray()); if(obj == null || obj == DBNull.Value) {{ return false; }} int count = Convert.ToInt32(obj); if(count == 0) {{ return MySqlHelper2.ExecuteNonQuery(sqlcn, CommandType.Text, insertSql, listParams.ToArray()) > 0; }} else {{ return false; }} }} }} "; return(string.Format(template, model_name, addContent.ToString(), addparamsContent.ToString(), db_name, table_name, select_text)); } } else { return(string.Empty); } }
public string CreateAddMethod() { StringBuilder keyContent = new StringBuilder(); StringBuilder valueContent = new StringBuilder(); int index = 0; foreach (var item in list.ToNotMainIdList()) { if (index == 0) { keyContent.Append(item.Name); valueContent.Append("@" + item.Name); } else { keyContent.Append(" ," + item.Name); valueContent.Append(" ,@" + item.Name); } index++; } string addContent = string.Format(@"string insertSql = ""insert into {0} ({1}) values ({2});"";", table_name, keyContent.ToString(), valueContent.ToString()); var checkList = Cache_VMData.GetAddCheckList(table_name, list.ToNotMainIdList()); if (checkList.Count == 0) { string template = @" public bool Add{3}({0} model) {{ {1} using (IDbConnection sqlcn = ConnectionFactory.{2}) {{ return sqlcn.Execute(insertSql, model) > 0; }} }} "; return(string.Format(template, model_name, addContent, db_name, table_name)); } else { string select_text = SqlTextHelper.CreateSelectCountSql(table_name, checkList); string template = @" public bool Add{3}({0} model) {{ {4} {1} using (IDbConnection sqlcn = ConnectionFactory.{2}) {{ sqlcn.Open(); int count = sqlcn.QuerySingleOrDefault<int>(selectSql, model); if(count == 0) {{ return sqlcn.Execute(insertSql, model) > 0; }} return false; }} }} "; return(string.Format(template, model_name, addContent, db_name, table_name, select_text)); } }