我正在网站上的WYSIWYG编辑器上工作。有问题的编辑是nicEdit。
我的mvc模型遇到了一些问题,并且发现了一个"检测到一个潜在危险的Request.Form值"异常。
我尝试通过在我的Content属性上添加AllowHtml属性来解决此问题:
[AllowHtml]
public string Contents { get; set; }
此代码中抛出了异常:
public static string GetStringValue(this IValueProvider provider, string key)
{
return provider.getValue(key);
}
在运行时实例化的特定提供程序是内置的ValueProviderCollection,包含System.Web.Mvc.FormValueProvider,我的reading here建议应该尊重AllowHtml属性。
那么,我在这里做错了什么?
编辑:所以我的老师让我知道我工作的班级是IValueProvider的扩展(这显然是"这个IValueProvider提供商"的意思)。 / p>
不确定这是否会对事情产生影响,但我认为我已经完成了提及。
答案 0 :(得分:0)
阅读excellent blog post on the topic后,我实施了我的解决方案。结果很简单。
我提供了与现有方法类似的方法:
|- child1
parent ----|- child2
|- child3
在主叫代码中,对于我不想要验证的特定属性,我做了以下调用:
public static string GetStringValue(this IUnvalidatedValueProvider provider, string key, performValidation)
{
return provider.getValue(key, !performValidation).AttemptedValue;
}