Mercurial > pub > bltoolkit
diff Source/Templates/ValidationAttributes.ttinclude @ 0:f990fcb411a9
Копия текущей версии из github
author | cin |
---|---|
date | Thu, 27 Mar 2014 21:46:09 +0400 |
parents | |
children |
line wrap: on
line diff
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/Source/Templates/ValidationAttributes.ttinclude Thu Mar 27 21:46:09 2014 +0400 @@ -0,0 +1,32 @@ +<# + { + var validationPrevBeforeGenerateModel = BeforeGenerateModel; + + BeforeGenerateModel = tt => + { + validationPrevBeforeGenerateModel(tt); + + Usings.Add("BLToolkit.Validation"); + + foreach (var t in Tables.Values) + { + var maxLength = t.Columns.Values + .Where (x => x.Type == "string") + .Select(x => x.Length) + .OrderByDescending(x => x) + .FirstOrDefault() + // Get exponent slowly + .ToString().Length; + + foreach (var c in t.Columns.Values) + { + if (c.Type == "string" && c.Length > 0) + c.Attributes.Add(string.Format("MaxLength({0," + maxLength + "})", c.Length)); + + if (!c.IsNullable) + c.Attributes.Add("Required"); + } + } + }; + } +#> \ No newline at end of file