Asp.net mvc sitfinity MVC wideget不通过剑道文本编辑器接受html标记
我正在sitefinity中使用MVC小部件,并尝试使用文本编辑器,这样content manager就可以使用kendo添加HTML编辑器,这样他们就可以将文本加粗并添加布利特点,当我尝试保存数据时,我会收到错误消息,下面是关于如何解决此问题的任何想法 潜在危险的请求。从中检测到表单值 客户(段落_text=“asdsadasc fasdf 控制器:Asp.net mvc sitfinity MVC wideget不通过剑道文本编辑器接受html标记,asp.net-mvc,sitefinity,Asp.net Mvc,Sitefinity,我正在sitefinity中使用MVC小部件,并尝试使用文本编辑器,这样content manager就可以使用kendo添加HTML编辑器,这样他们就可以将文本加粗并添加布利特点,当我尝试保存数据时,我会收到错误消息,下面是关于如何解决此问题的任何想法 潜在危险的请求。从中检测到表单值 客户(段落_text=“asdsadasc fasdf 控制器: [ValidateInput(false)] [HttpPost] public ActionResult CreateParagraph(co
[ValidateInput(false)]
[HttpPost]
public ActionResult CreateParagraph(contentModel model)
{
...
}
型号:
[AllowHtml]
public string paragraph_text { get; set; }
然后设计器Js对字符串进行编码,然后在其在视图中呈现之前进行决定。您将在“应用更改”函数中对其进行编码。我意识到这是一个较老的问题,但我最近遇到了这个问题。要解决这个问题,我们必须创建一个自定义请求验证程序类,如本文所述:
公共类CustomRequestValidator自定义:CustomRequestValidator
{
内部静态只读字符串[]\u未验证的文件路径=
{
"///",
};
受保护的覆盖布尔IsValidRequestString(HttpContext上下文,字符串值,System.Web.Util.RequestValidationSource RequestValidationSource,string collectionKey,out int validationFailureIndex)
{
var isValid=base.IsValidRequestString(上下文、值、requestValidationSource、collectionKey、out validationFailureIndex);
如果(!isValid)
{
isValid |=context.Request.FilePath!=null&&context.Request.FilePath.In(_nonvalidatedFilePath);
}
返回有效;
}
}
SF无法识别[ValidateInput(false)]/[AllowHtml]数据注释,这令人恼火。
public class CustomRequestValidatorCustom : CustomRequestValidator
{
internal static readonly string[] _nonValidatedFilePaths =
{
"/<controller>/<action>/",
};
protected override bool IsValidRequestString(HttpContext context, string value, System.Web.Util.RequestValidationSource requestValidationSource, string collectionKey, out int validationFailureIndex)
{
var isValid = base.IsValidRequestString(context, value, requestValidationSource, collectionKey, out validationFailureIndex);
if (!isValid)
{
isValid |= context.Request.FilePath != null && context.Request.FilePath.In(_nonValidatedFilePaths);
}
return isValid;
}
}