/// <summary> /// 根据某个字段信息,得到.Net属性项的代码. /// </summary> /// <param name="field">字段信息</param> /// <returns>属性项代码</returns> private string GetAttrItem(Field field) { string fieldName = GeneratorTool.CS_FormatFieldName(field.name); string attrName = GeneratorTool.CS_FormatAttributeName(field.name); string result = string.Empty; if (field.constrainttype.Contains("P")) { string PrimaryKeyType = string.Empty; if (field.type == "int") { PrimaryKeyType = "Identity"; } else if (field.type == "string") { PrimaryKeyType = "Guid"; } result = "\n\n/// <summary>\n///" + field.remark + "\n/// </summary>\n[DataMember]\n[Column(FilterType = FilterType.IsPrimaryKey, PrimaryKeyType = PrimaryKeyType." + PrimaryKeyType + ")]\npublic " + field.type + " " + attrName + "{\tget;\tset;\t}"; } else { result = "\n\n/// <summary>\n///" + field.remark + "\n/// </summary>\n[DataMember]\npublic " + field.type + " " + attrName + "{\tget;\tset;\t}"; } result = Regex.Replace(result, "\t", this._tab); return(GeneratorTool.ForwardIndentCodeBlock(result, 2)); }
/// <summary> /// 得到.Net实体类的类头. /// </summary> /// <param name="namespaceName">命名空间名</param> /// <param name="refList">引用列表</param> /// <param name="claName">类名</param> /// <param name="claRemark">类注释</param> private void GetClassHeader(string namespaceName, string[] refList, string claName, string claRemark) { //claName = GeneratorTool.CapFirstLetter(claName); claName = GeneratorTool.ChartConversion(claName); string str = ""; str += GeneratorTool.GetEntityClassHeader(); str += "\n"; for (int i = 0; i < refList.Length; i++) { str += refList[i] + "\n"; } str += "\nnamespace " + namespaceName + "\n{\n"; str += GeneratorTool.ForwardIndentCodeBlock(this.FormatClassRemark(claRemark + "DAL层"), 1); str += "\n" + this._tab + "public class " + claName + "DAL:I" + claName + "DAL\n{\n"; this._classHeader = str; }
/// <summary> /// 得到.Net实体类的类头. /// </summary> /// <param name="namespaceName">命名空间名</param> /// <param name="refList">引用列表</param> /// <param name="claName">类名</param> /// <param name="claRemark">类注释</param> private void GetClassHeader(string namespaceName, string[] refList, string claName, string claRemark) { //claName = GeneratorTool.CapFirstLetter(claName); claName = GeneratorTool.ChartConversion(claName); string str = ""; str += GeneratorTool.GetEntityClassHeader(); str += "\n"; for (int i = 0; i < refList.Length; i++) { str += refList[i] + "\n"; } str += "\nnamespace " + namespaceName + "\n{\n[Serializable]\n[DataContract]\n[System.ComponentModel.DataAnnotations.Schema.Table(\"" + claName + "\")]\n"; str += GeneratorTool.ForwardIndentCodeBlock(this.FormatClassRemark(claRemark), 1); str += "\n" + this._tab + "public class " + claName + "{\n"; this._classHeader = str; }
/// <summary> /// 得到.Net实体类的类头. /// </summary> /// <param name="namespaceName">命名空间名</param> /// <param name="refList">引用列表</param> /// <param name="claName">类名</param> /// <param name="claRemark">类注释</param> private void GetClassHeader(string namespaceName, string[] refList, string claName, string claRemark) { //claName = GeneratorTool.CapFirstLetter(claName); claName = GeneratorTool.ChartConversion(claName); string str = ""; str += GeneratorTool.GetEntityClassHeader(); str += "\n"; for (int i = 0; i < refList.Length; i++) { str += refList[i] + "\n"; } str += "\nnamespace " + namespaceName + "\n{\n"; str += GeneratorTool.ForwardIndentCodeBlock(this.FormatClassRemark(claRemark + "接口层"), 1); str += "\n" + this._tab + "public class " + claName.Replace("_", "") + "Controller:BaseController\n{\n"; str += "\n" + this._tab + "private readonly " + _classdal + " " + _classidal + ";\n"; str += "\n" + this._tab + "public " + claName.Replace("_", "") + "Controller(" + _classdal + " " + _classnodal + ")\n{\n"; str += "\n" + this._tab + _classidal + " = " + _classnodal + ";\n}\n"; this._classHeader = str; }
/// <summary> /// 根据类名,得到构造方法的代码. /// </summary> /// <param name="claName">类名</param> private void GetStructureMethod(string claName) { this._structure = GeneratorTool.ForwardIndentCodeBlock("\n\n/// <summary>\n/// 默认构造方法.\n/// </summary>\npublic " + GeneratorTool.ChartConversion(claName) + "()\n{\n}", 2); }
/// <summary> /// 根据某个字段信息,得到.Net字段项的代码. /// </summary> /// <param name="field">字段信息</param> /// <returns>字段项代码</returns> private string GetFieldItem(Field field) { string fieldName = GeneratorTool.CS_FormatFieldName(field.name); return(GeneratorTool.ForwardIndentCodeBlock("\nprivate " + field.type + " " + fieldName + ";", 2)); }