RuleViolationから返されたエラーメッセージをHtml.ValidationMessage(modelName、validationMessage)のvalidationMessageとして使用します。asp.net MVC RuleViolation.ErrorMessage into Html.ValidationMessage
簡単な例:Person.csにModelStateにエラーを追加する
public partial class Person
{
public bool IsValid
{
get { return (GetRuleViolations().Count() == 0); }
}
public IEnumerable<RuleViolation> GetRuleViolations()
{
if (String.IsNullOrEmpty(Name))
yield return new RuleViolation("Name required", "Name");
yield break;
}
}
foreach (RuleViolation issue in errors)
{
modelState.AddModelError(issue.PropertyName, issue.ErrorMessage);
}
ASPページ /createPerson/
<%=Html.TextBox("Name",Model.Name)%>
<%=Html.ValidationMessage("Name", "Name required")%>
私は何をしたいことはRuleViolationを使用しています上記の「名前が必要です」の代わりにメッセージが表示されます。これは可能ですか?
溶液(Alexander Prokofyevから)で、これは非常に単純な例である
<%=Html.ValidationMessage("Name")%>
単一PARAMTERでValidationMessageを使用し、私のビジネスルールのいくつかは、値に応じて入力に異なるRuleViolationsを投げることができます。
多くのありがとうございます。 サイモン
多くの感謝のアレクサンダー、DOH!私のための瞬間私はそれを見たはずだった – longhairedsi