private string BuildCode_GetModelTable(string tableName, List <Column> columnList, List <Column> keyColumnList) { StringPlus sp = new StringPlus(); //注释 sp.AppendSpaceLine(1, "/// <summary>"); sp.AppendSpaceLine(1, "/// " + "获取模型Tabel"); sp.AppendSpaceLine(1, "/// </summary>"); //方法头 string strFun = string.Format("public DataTable GetModelTable({0})", BuildHelper.BuildParameterListString(keyColumnList, true)); sp.AppendSpaceLine(1, strFun); //方法体 sp.AppendSpaceLine(1, "{"); sp.AppendSpaceLine(2, "StringBuilder strSql = new StringBuilder();"); string columnsString = BuildHelper.BuildColumnList(columnList, false); sp.AppendSpaceLine(2, string.Format("strSql.Append(\"select {0}\");", columnsString)); sp.AppendSpaceLine(2, string.Format("strSql.Append(\" from {0}\");", tableName)); sp.AppendSpaceLine(2, string.Format("strSql.Append(\" where 1>0{0});", BuildHelper.BuildWhereString(keyColumnList))); sp.AppendSpaceLine(2, "DataTable dt = SQLHelper.ExecuteDt(strSql.ToString());"); sp.AppendSpaceLine(2, "return dt;"); sp.AppendSpaceLine(1, "}"); return(sp.ToString()); }
/// <summary> /// 判断是否存在 /// </summary> /// <param name="tableName"></param> /// <param name="columnList"></param> /// <param name="keyColumnList"></param> /// <returns></returns> public string BuildCode_Exist(string tableName, List <Column> keyColumnList) { StringPlus sp = new StringPlus(); //注释 sp.AppendSpaceLine(1, "/// <summary>"); sp.AppendSpaceLine(1, "/// " + "是否存在"); sp.AppendSpaceLine(1, "/// </summary>"); //方法头 string strFun = string.Format("public bool Exist({0})", BuildHelper.BuildParameterListString(keyColumnList, true)); sp.AppendSpaceLine(1, strFun); //方法体 sp.AppendSpaceLine(1, "{"); sp.AppendSpaceLine(2, string.Format("string condition = \"{0};", BuildHelper.BuildWhereString(keyColumnList))); sp.AppendSpaceLine(2, "DataTable dt = GetList(condition);"); sp.AppendSpaceLine(2, "if (dt.Rows.Count > 0)"); sp.AppendSpaceLine(2, "{"); sp.AppendSpaceLine(3, "return true;"); sp.AppendSpaceLine(2, "}"); sp.AppendSpaceLine(2, "else"); sp.AppendSpaceLine(2, "{"); sp.AppendSpaceLine(3, "return false;"); sp.AppendSpaceLine(2, "}"); sp.AppendSpaceLine(1, "}"); return(sp.ToString()); }
/// <summary> /// 生成删除代码 /// </summary> /// <param name="tableName"></param> /// <param name="keyColumnList"></param> /// <returns></returns> public string BuildCode_Delete(string tableName, List <Column> keyColumnList) { StringPlus sp = new StringPlus(); //注释 sp.AppendSpaceLine(1, "/// <summary>"); sp.AppendSpaceLine(1, "/// " + "删除"); sp.AppendSpaceLine(1, "/// </summary>"); //方法头 string strFun = string.Format("public bool Delete({0})", BuildHelper.BuildParameterListString(keyColumnList, true)); sp.AppendSpaceLine(1, strFun); //方法体 sp.AppendSpaceLine(1, "{"); sp.AppendSpaceLine(2, string.Format("if (dal.Delete({0}) > 0)", BuildHelper.BuildParameterListString(keyColumnList, false))); sp.AppendSpaceLine(2, "{"); sp.AppendSpaceLine(3, "return true;"); sp.AppendSpaceLine(2, "}"); sp.AppendSpaceLine(2, "else"); sp.AppendSpaceLine(2, "{"); sp.AppendSpaceLine(3, "return false;"); sp.AppendSpaceLine(2, "}"); sp.AppendSpaceLine(1, "}"); return(sp.ToString()); }
///// <summary> ///// 生成获取实体代码 ///// </summary> ///// <param name="tableName"></param> ///// <param name="keyColumnList"></param> ///// <returns></returns> //public string BuildCode_GetModel(string tableName, List<Column> columnList, List<Column> keyColumnList) //{ // string txt = ""; // txt = BuildCode_GetModel(tableName, keyColumnList); // txt += "\n"; // txt += BuildCode_GetModelTable(tableName, columnList, keyColumnList); // return txt; //} /// <summary> /// 生成获取实体代码 /// </summary> /// <param name="tableName"></param> /// <param name="keyColumnList"></param> /// <returns></returns> public string BuildCode_GetModel(string tableName, List <Column> columnList, List <Column> keyColumnList) { StringPlus sp = new StringPlus(); //注释 sp.AppendSpaceLine(1, "/// <summary>"); sp.AppendSpaceLine(1, "/// " + "获取模型"); sp.AppendSpaceLine(1, "/// </summary>"); //方法头 string strFun = string.Format("public {0} GetModel({1})", tableName, BuildHelper.BuildParameterListString(keyColumnList, true)); sp.AppendSpaceLine(1, strFun); //方法体 sp.AppendSpaceLine(1, "{"); sp.AppendSpaceLine(2, "string strConn = Config.ConnectionString;"); sp.AppendSpaceLine(2, "StringBuilder strSql = new StringBuilder();"); string columnsString = BuildHelper.BuildColumnList(columnList, false); sp.AppendSpaceLine(2, string.Format("strSql.Append(\"select {0}\");", columnsString)); sp.AppendSpaceLine(2, string.Format("strSql.Append(\" from {0}\");", tableName)); sp.AppendSpaceLine(2, string.Format("strSql.Append(\" where 1>0{0});", BuildHelper.BuildWhereString(keyColumnList))); sp.AppendSpaceLine(2, "SqlConnection conn = new SqlConnection(strConn);"); sp.AppendSpaceLine(2, "SqlCommand cmd = new SqlCommand(strSql.ToString(), conn);"); sp.AppendSpaceLine(2, "conn.Open();"); sp.AppendSpaceLine(2, "SqlDataReader dr = cmd.ExecuteReader();"); sp.AppendSpaceLine(2, string.Format("{0} model = new {0}();", tableName)); sp.AppendSpaceLine(2, "if (dr.Read())"); sp.AppendSpaceLine(2, "{"); foreach (var column in columnList) { if (column.Type.ToCSharpTypeString() == "int" || column.Type.ToCSharpTypeString() == "float" || column.Type.ToCSharpTypeString() == "decimal") { sp.AppendSpaceLine(3, string.Format("model.{0} = Convert.ToInt16(dr[\"{0}\"]);", column.Name)); } else if (column.Type.ToCSharpTypeString() == "bool") { sp.AppendSpaceLine(3, string.Format("model.{0} = Convert.ToBoolean(dr[\"{0}\"]);", column.Name)); } else if (column.Type.ToCSharpTypeString() == "DateTime") { sp.AppendSpaceLine(3, string.Format("model.{0} = Convert.ToDateTime(dr[\"{0}\"]);", column.Name)); } else { sp.AppendSpaceLine(3, string.Format("model.{0} = dr[\"{0}\"].ToString();", column.Name)); } } sp.AppendSpaceLine(2, "}"); sp.AppendSpaceLine(2, "conn.Close();"); sp.AppendSpaceLine(2, "return model;"); sp.AppendSpaceLine(1, "}"); return(sp.ToString()); }
/// <summary> /// 生成删除代码 /// </summary> /// <param name="tableName"></param> /// <param name="keyColumnList"></param> /// <returns></returns> public string BuildCode_Delete(string tableName, List <Column> keyColumnList) { StringPlus sp = new StringPlus(); //注释 sp.AppendSpaceLine(1, "/// <summary>"); sp.AppendSpaceLine(1, "/// " + "删除"); sp.AppendSpaceLine(1, "/// </summary>"); //方法头 string strFun = string.Format("public int Delete({0})", BuildHelper.BuildParameterListString(keyColumnList, true)); sp.AppendSpaceLine(1, strFun); //方法体 sp.AppendSpaceLine(1, "{"); sp.AppendSpaceLine(2, "string strConn = Config.ConnectionString;"); sp.AppendSpaceLine(2, string.Format("string strSql = \"delete from {0} where 1>0{1};", tableName, BuildHelper.BuildWhereString(keyColumnList))); sp.AppendSpaceLine(2, "SqlConnection conn = new SqlConnection(strConn);"); sp.AppendSpaceLine(2, "SqlCommand cmd = new SqlCommand(strSql.ToString(), conn);"); sp.AppendSpaceLine(2, "conn.Open();"); sp.AppendSpaceLine(2, "cmd.ExecuteNonQuery();"); sp.AppendSpaceLine(2, "conn.Close();"); sp.AppendSpaceLine(2, "return 1;"); sp.AppendSpaceLine(1, "}"); return(sp.ToString()); }
/// <summary> /// 判断是否存在 /// </summary> /// <param name="tableName"></param> /// <param name="columnList"></param> /// <param name="keyColumnList"></param> /// <returns></returns> public string BuildCode_Exist(string tableName, List <Column> keyColumnList) { StringPlus sp = new StringPlus(); //注释 sp.AppendSpaceLine(1, "/// <summary>"); sp.AppendSpaceLine(1, "/// " + "是否存在"); sp.AppendSpaceLine(1, "/// </summary>"); //方法头 string strFun = string.Format("public bool Exist({0})", BuildHelper.BuildParameterListString(keyColumnList, true)); sp.AppendSpaceLine(1, strFun); //方法体 sp.AppendSpaceLine(1, "{"); sp.AppendSpaceLine(2, string.Format("return dal.Exist({0});", BuildHelper.BuildParameterListString(keyColumnList, false))); sp.AppendSpaceLine(1, "}"); return(sp.ToString()); }
/// <summary> /// 生成删除代码 /// </summary> /// <param name="tableName"></param> /// <param name="keyColumnList"></param> /// <returns></returns> public string BuildCode_Delete(string tableName, List <Column> keyColumnList) { StringPlus sp = new StringPlus(); //注释 sp.AppendSpaceLine(1, "/// <summary>"); sp.AppendSpaceLine(1, "/// " + "删除"); sp.AppendSpaceLine(1, "/// </summary>"); //方法头 string strFun = string.Format("public int Delete({0})", BuildHelper.BuildParameterListString(keyColumnList, true)); sp.AppendSpaceLine(1, strFun); //方法体 sp.AppendSpaceLine(1, "{"); sp.AppendSpaceLine(2, string.Format("string strSql = \"delete from {0} where 1>0{1};", tableName, BuildHelper.BuildWhereString(keyColumnList))); sp.AppendSpaceLine(2, "return SQLHelper.ExecuteSql(strSql);"); sp.AppendSpaceLine(1, "}"); return(sp.ToString()); }
/// <summary> /// 生成获取实体代码 /// </summary> /// <param name="tableName"></param> /// <param name="keyColumnList"></param> /// <returns></returns> private string BuildCode_GetModel(string tableName, List <Column> keyColumnList) { StringPlus sp = new StringPlus(); //注释 sp.AppendSpaceLine(1, "/// <summary>"); sp.AppendSpaceLine(1, "/// " + "获取模型"); sp.AppendSpaceLine(1, "/// </summary>"); //方法头 string strFun = string.Format("public {0} GetModel({1})", tableName, BuildHelper.BuildParameterListString(keyColumnList, true)); sp.AppendSpaceLine(1, strFun); //方法体 sp.AppendSpaceLine(1, "{"); sp.AppendSpaceLine(2, string.Format("{0} model = null;", tableName)); sp.AppendSpaceLine(2, string.Format("DataTable dt = GetModelTable({0});", BuildHelper.BuildParameterListString(keyColumnList, false))); sp.AppendSpaceLine(2, string.Format("model = DataTableHelper.CreateItem<{0}>(dt.Rows[0]);", tableName)); sp.AppendSpaceLine(2, "return model;"); sp.AppendSpaceLine(1, "}"); return(sp.ToString()); }