ASP.NET MVC控制器里捕獲視圖的錯誤驗證信息(ErrorMessage)


 

ViewModel類:

    /// <summary>
    /// 評論用驗證視圖
    /// </summary>
    public partial class VCreateShopComment
    {
        [Required(AllowEmptyStrings = false, ErrorMessage = "旺旺是必須的")]
        public string WW { get; set; }

        [Required(AllowEmptyStrings = false, ErrorMessage = "必須評論")]
        [StringLength(200, ErrorMessage = "評論內容不能超過{0}字")]
        public string CommentText { get; set; }



        [Range(1, 5, ErrorMessage = "評分要在{1}到{2}之間")]
        public short Score { get; set; }


        //[Range(0, int.MaxValue, ErrorMessage = "您的賬戶無效")]
        public int ID{ get; set; }

    }

 

控制器

[HttpPost]
public ActionResult Add(VCreateShopComment v)
        {

   if (ModelState.IsValid)
            {
              //做愛做的事
            }
            StringBuilder sb = new StringBuilder();
            var errors = ModelState.Values;
            foreach (var item in errors)
            {
                foreach (var item2 in item.Errors)
                {
          if (!item2.ErrorMessage.IsNullOrWhiteSpace())
                   {
                       sb.AppendLine(item2.ErrorMessage + "<br />");                    }
} } return Content(sb.ToString()); }

 

錯誤的輸出用2次遍歷就行了,前提是,對於每個驗證特性ErrorMessage 是要有的

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM