【发布时间】:2013-07-07 04:03:32
【问题描述】:
我可以使用 TextAreaFor 帮助器将 html 保存到数据库,然后将其加载到呈现它的页面上吗?
【问题讨论】:
标签: asp.net-mvc-4 razor-2 sql-server-2012-express
我可以使用 TextAreaFor 帮助器将 html 保存到数据库,然后将其加载到呈现它的页面上吗?
【问题讨论】:
标签: asp.net-mvc-4 razor-2 sql-server-2012-express
当然可以,但是默认情况下,ASP.NET 的请求过滤器不允许传入的请求包含 html、js 等。因此,您需要为模型的目标属性禁用此选项。最好的方法是用AllowHtmlAttribute 标记属性。
public class YourViewModel
{
[AllowHtml]
public string description { get; set; }
}
并在视图中渲染
@Html.Raw(Model.description)
或者,您可以禁用对操作的验证请求,例如
[HttpPost]
[ValidateInput(false)]
public ActionResult YourAction(YourViewModel model)
{
}
但这不是最好的解决方案。
【讨论】: