2010-02-22 69 views
0

我想要得到它是否是一個帖子或獲取htmlhelper,因爲我正在構建一個validationsummary擴展,我只希望它在表單發佈時運行?如何在ASP.NET MVC中的htmlHelper中獲取帖子或獲取狀態?

任何想法?

目前我所得到的是這一點,它工作得很好,但它運行的每個頁面加載

StringBuilder sb = new StringBuilder(); 

     sb.Append("<script type='text/javascript'>"); 
     sb.Append("$(function() {"); 


     if (htmlHelper.ViewData.ModelState.IsValid) { 
      sb.Append("LLNP4.addSuccess()"); 
      sb.Append("});"); 
      sb.Append("</script>"); 
      return sb.ToString(); 
     } 



     foreach (ModelState modelState in htmlHelper.ViewData.ModelState.Values){ 
      foreach (ModelError modelError in modelState.Errors){ 
       sb.Append("LLNP4.addError('" + modelError.ErrorMessage + "');"); 

      } 
     } 

     sb.Append("});"); 
     sb.Append("</script>"); 

     return sb.ToString(); 

回答

0

您可以使用HttpContext.Current.Request.HttpMethod時間,但我覺得你的想法似乎並不正確。

編輯

確保您的錯誤消息不包含HTML標記或編碼錯誤信息第一。

+0

是的,當我對這個想法也很感興趣時,我會感到一陣癢/燒灼感。認爲這會在其他地方更好地處理。 – griegs 2010-02-22 23:00:59

+0

'在別處處理' - 在哪裏? 我正在爲驗證摘要構建一個htmlhelper擴展。我很樂意聽到任何其他方法:) – kurasa 2010-02-22 23:46:35

+0

@kjm:作爲html helper的驗證摘要是好的,但檢查它是否是POST不正確。特別是當你考慮使用POST-REDIRECT-GET模式時。 – LukLed 2010-02-22 23:53:48

相關問題