/// <summary> /// 获得模型代码字符串 /// </summary> /// <param name="tableModel">表模型</param> /// <returns>模型代码字符串</returns> public string GetModelCodeStrByTypeScript(SqlServerTableModel tableModel) { string code = string.Empty; if (!tableModel.Remark.MIsNullOrEmpty()) { code += " /**\r\n"; code += String.Format(" * {0}\r\n", tableModel.Remark); code += " */\r\n"; } code += String.Format(" export class {0} ", tableModel.Name) + "{\r\n"; if (tableModel.Columns != null && tableModel.Columns.Count > 0) { SqlServerColumnModel PKitem = tableModel.Columns.Where(m => m.IsPK == 1).FirstOrDefault(); if (PKitem == null) { tableModel.Columns[0].IsPK = 1; } foreach (SqlServerColumnModel item in tableModel.Columns) { if (!item.Remark.MIsNullOrEmpty()) { code += " /**\r\n"; code += String.Format(" * {0}\r\n", item.Remark); code += " */\r\n"; } code += String.Format(" public {0}: {1}", item.Name, item.TypeByTypeScript); if (item.TypeByCSharp == "Guid") { code += "=\"" + Guid.Empty.ToString() + "\";\r\n"; } else { code += ";\r\n"; } } } code += " }\r\n"; return(code); }
/// <summary> /// 获得模型代码字符串 /// </summary> /// <param name="tableModel">表模型</param> /// <returns>模型代码字符串</returns> public string GetModelCodeStrByCSharp(SqlServerTableModel tableModel) { string code = string.Empty; code += "using System;\r\n"; code += "using System.ComponentModel;\r\n"; code += "using System.ComponentModel.DataAnnotations;\r\n"; code += "using System.ComponentModel.DataAnnotations.Schema;\r\n"; code += "using MateralTools.MEntityFramework;\r\n"; code += String.Format("namespace {0}.Model\r\n", ProjectName); code += "{\r\n"; if (!tableModel.Remark.MIsNullOrEmpty()) { code += " /// <summary>\r\n"; code += String.Format(" /// {0}\r\n", tableModel.Remark); code += " /// </summary>\r\n"; } code += String.Format(" [Table(\"{0}\")]\r\n", tableModel.Name); code += String.Format(" public class {0}\r\n", tableModel.Name); code += " {\r\n"; if (tableModel.Columns != null && tableModel.Columns.Count > 0) { List <SqlServerColumnModel> PKitems = tableModel.Columns.Where(m => m.IsPK == 1).ToList(); if (PKitems == null || PKitems.Count == 0) { tableModel.Columns[0].IsPK = 1; } foreach (SqlServerColumnModel item in tableModel.Columns) { if (!item.Remark.MIsNullOrEmpty()) { code += " /// <summary>\r\n"; code += String.Format(" /// {0}\r\n", item.Remark); code += " /// </summary>\r\n"; code += String.Format(" [Description(\"{0}\")]\r\n", item.Remark); } code += String.Format(" [Column(\"{0}\")]\r\n", item.Name); if (item.IsPK == 1) { code += " [Key]\r\n"; } if (item.DataType == "timestamp") { code += " [Timestamp]\r\n"; } else if (item.IsNull == 0 && item.IsPK == 0) { code += " [Required]\r\n"; } if (item.Name == "IsDelete") { code += " [LogicDelete]\r\n"; } //if (item.TypeByCSharp == "string") //{ // code += string.Format(" [MaxLength({0})]\r\n", item.Length); //} code += String.Format(" public {0} {1} ", item.TypeByCSharp, item.Name) + "{ get; set; }\r\n"; } } code += " }\r\n"; code += "}\r\n"; return(code); }