2011-09-19 124 views
12

,我有以下ASP.Net MVC頁的headerValidateRequest在剃刀語法

<%@ Page Title="" Language="C#" MasterPageFile="~/Views/Shared/Admin.Master" Inherits="System.Web.Mvc.ViewPage<NEOGOV_Ideas.Models.SubIdeaAdminPage>" 
ValidateRequest="false" %> 

我需要這個頁面移動剃刀語法。我應該如何設置ValidateRequest? 謝謝

回答

14

您不應該在視圖中需要該行,而應使用控制器方法中的ValidateInput(false)屬性。

確保你已經在你的web.config得到這個,如果你正在使用ASP .NET 4.0(我想你就是如果你使用MVC 3)

<httpRuntime requestValidationMode="2.0"/> 

馬丁

+4

FYI - MVC 3不再需要標誌。一般建議你不要把它放在配置中,如果你能避免它。 – Levi

24

ValidateInput屬性

[HttpPost] 
[ValidateInput(false)] 
public ActionResult index() 
{ 
    return view(); 
} 
+0

這正是我需要的,謝謝! – Gromer

+0

很好的答案!謝謝。 +100;) – 2014-01-16 13:40:47

2

從MVC 4,我們可以只允許模型類的屬性,而不是對整個請求html內容裝飾你的操作方法。只需要按屬性標記屬性AllowHtml

public class EditorialPixlocateRequestViewModel 
{ 
    [AllowHtml] 
    public string Xml { get; set; } 
}