[英]asp.net mvc override validation message
我正在使用 asp.net mvc 5 並想更改驗證消息文本。 例如,
[Required]
public string name{ get; set; }
我進行了必要的驗證,錯誤消息顯示為:“名稱字段是必需的。” 但我想為所有必需的驗證更改“我的文本”。
我可以這樣做
[Required (ErrorMessage="something my text")]
但我不想為每個參數重復這個。
如果您非常願意使用帶有自定義錯誤消息的Required
屬性,那么我有一個簡單的建議,那么為什么不使用HTML 5
來代替
@Html.TextBoxFor(m => m.name,
new { @class = "form-control", placeholder = "name", required="Name is required"})
我在 MVC5 中使用的其他方式是這樣的
[Required]
[StringLength(100, ErrorMessage = "The {0} must be at least {8} characters long.", MinimumLength = 6)]
[Display(Name = "User Name")]
public string UserName{ get; set; }
我希望這會有所幫助
我認為這是無法避免的。 我們可以使用反射(盡管這不是最佳實踐),但是,屬性是程序集的靜態部分,動態添加將非常有問題,此外,它還會降低代碼的可理解性。
但是,如果您仍然想嘗試一下,我建議您查看這個答案: How to add an attribute to a property at runtime
我不能讓它工作,但也許你可以。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.