簡體   English   中英

如何找出 ASP.NET MVC 視圖中的錯誤計數?

[英]How do I find out the error count in a ASP.NET MVC View?

我想使用如下字符串格式化我的驗證摘要的標題:

"There are {0} errors on this page."

如何找出錯誤數量而不在控制器中執行並將其添加到查看數據?

我假設你的意思是從觀點來看。 以下內容未經測試。

ViewData.ModelState.Values.Where( v => v.Errors.Count != 0 ).Count()

如果您指的是IEnumerable<RuleViolation>的 ASP.NET MVC 1.0 版本,則可以通過以下方式獲得計數:

var errorCount = GetRuleViolations().Count();

要將該計數放入視圖而不將其放入視圖數據中,您可以為 ValidationSummary HtmlHelper 擴展方法創建一個重載,該方法返回包含錯誤計數的文本。 這使您可以從擴展方法中訪問錯誤計數。

要查看原始 ValidationSummary 擴展方法中的代碼,可以使用 Reflector 對其進行反編譯,或者從 Codeplex 下載 ASP.NET MVC 源代碼。

請注意,ASP.NET MVC 2.0 中的驗證機制發生了很大變化。

您還可以使用更簡單的方法

@if (ViewData.ModelState.ErrorCount > 0)
{
  ...
}

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM