c# - Is it possible to override a validation ErrorMessage when you have a collection of the same model? -
for example, if have 2 person objects part of view...
one parent , other child, don't want error message "gender required field" twice, rather have "please provide child's gender", etc.
public class person { [required(errormessage="please provide gender")] public char gender; } but other object:
public class parentchild { public person parent; public person child; } and in view it's
@html.editorfor(model.parent.gender) @html.editorfor(model.child.gender) is there way dataannotations or should customizing view?
i'm not somewhere can try it, yes, believe can that. think (or all?) of attributes in dataannotations namespace contains errormessage property. so, should able this:
[required(errormessage="please provide parent's gender")] public char parentgender { get; set; } [required(errormessage="please provide child's gender")] public char childgender { get; set; } here's more information on requiredattribute class , of properties can set.
edit: based on code added in edit, i'd no, don't think asking supported dataannotations. however, if using unobtrusive jquery validation, simple hack update data-val-required attribute on editor after page rendered javascript. like:
$("#your-child-element") .attr("data-val-required", "please provide child's gender"); you might try setting in view i'm not sure if requiredattribute override provide:
@html.editorfor(model.child.gender, new { data_val_required = "please provide child's gender" })
Comments
Post a Comment