private string GetValueObject(string ns, TableDef tdef) { StringBuilder stringBuilder = new StringBuilder(); stringBuilder.Append("using System;" + DBHandler.NL); stringBuilder.Append("using System.ComponentModel;" + DBHandler.NL); stringBuilder.Append("using System.ComponentModel.DataAnnotations;" + DBHandler.NL); stringBuilder.Append("using System.Web.Mvc;" + DBHandler.NL); stringBuilder.Append("using System.Collections.Generic;" + DBHandler.NL); stringBuilder.Append("using System.Linq;" + DBHandler.NL); stringBuilder.Append("using System.Web;" + DBHandler.NL); stringBuilder.Append("using System.Text;" + DBHandler.NL2); stringBuilder.Append("namespace " + ns.Trim() + DBHandler.NL + "{" + DBHandler.NL + "\tpublic class " + tdef.Name + DBHandler.NL + "\t{" + DBHandler.NL); stringBuilder.Append("\t\t#region |-------- Properties --------|" + DBHandler.NL2); foreach (FieldDef field in tdef.Fields) { string str1 = DBHandler.NormalizeFieldName("_" + field.Name); if (str1 == tdef.Name) { str1 += "Value"; } if (!field.CanBeNull) { stringBuilder.Append("\t\t[Required]" + DBHandler.NL); } stringBuilder.Append("\t\t[DisplayName(\"" + field.Description + "\")]" + DBHandler.NL); if (field.DataType == "String" && field.FieldLength > 0) { stringBuilder.Append("\t\t[StringLength(" + (object)field.FieldLength + ")]" + DBHandler.NL); } string str2 = field.CanBeNull ? (DBTools.IsNullable(field.DataType) ? field.DataType : field.DataType + "?") : field.DataType; stringBuilder.Append("\t\tpublic "); stringBuilder.Append(str2 + " " + str1 + " { get; set; }" + DBHandler.NL2); } stringBuilder.Append(DBHandler.NL + "\t\t#endregion" + DBHandler.NL2); stringBuilder.Append(this.GetXMLCreator(tdef)); stringBuilder.Append(DBHandler.NL + "\t}" + DBHandler.NL + "}" + DBHandler.NL); return(stringBuilder.ToString()); }
private string GetToDBMapper(TableDef tdef) { StringBuilder stringBuilder1 = new StringBuilder(); StringBuilder stringBuilder2 = new StringBuilder(); stringBuilder2.Append("\t\t\tif( value == null ) {" + DBHandler.NL); stringBuilder2.Append("\t\t\t\tthrow new DBException(\"Value Object is NULL\");" + DBHandler.NL); stringBuilder2.Append("\t\t\t}" + DBHandler.NL2); string str1 = "\r\n protected static void MapToDB(ref DbCommand cmd, @@VALUE@@ value) \r\n {\r\n@@DATA@@\r\n }\r\n\r\n".Replace("@@VALUE@@", tdef.Name); foreach (FieldDef field in tdef.Fields) { string str2 = field.CanBeNull ? (DBTools.IsNullable(field.DataType) ? field.DataType : field.DataType + "?") : field.DataType; string str3 = DBHandler.NormalizeClassName((string)null, field.Name); if (str3 == tdef.Name) { str3 += "Value"; } stringBuilder1.Append("\t\t\tDBTools.AddDbParameter(ref cmd, \"@" + field.Name + "\", value." + str3 + ");" + DBHandler.NL); if (!field.CanBeNull && (DBTools.IsNullable(field.DataType) || str2.EndsWith("?"))) { stringBuilder2.Append("\t\t\tif( value." + str3 + " == null ) {" + DBHandler.NL); stringBuilder2.Append("\t\t\t\tthrow new DBException(\"Field '" + str3 + "' cannot be null!\");" + DBHandler.NL); stringBuilder2.Append("\t\t\t}" + DBHandler.NL2); } if (field.DataType == "String" && field.FieldLength <= (int)byte.MaxValue && field.FieldLength > 0) { stringBuilder2.Append("\t\t\tif( value." + str3 + " != null && value." + str3 + ".Length > " + (object)field.FieldLength + " ) {" + DBHandler.NL); stringBuilder2.Append("\t\t\t\tthrow new DBException(\"Field '" + str3 + "' cannot be more than '" + (object)field.FieldLength + "' characters!\");" + DBHandler.NL); stringBuilder2.Append("\t\t\t}" + DBHandler.NL2); } } string newValue = stringBuilder2.ToString() + stringBuilder1.ToString(); return(str1.Replace("@@DATA@@", newValue)); }
private static string NormalizeFieldName(string input) { return(DBHandler.NormalizeFieldName(input, false)); }