如何在ASP.NET MVC中使用Html.Encode和html helper来防止javascript注入? 例如:
<%= Html.TextBox("Name") %>
答案 0 :(得分:2)
框架自动处理所有这些。你必须明确告诉它不要检查危险的输入。
当你这样做时,你不应该解码任何进入数据库的东西,如果你允许基本的html。
我选择不在客户端编码,而不喜欢我的模型来执行该功能。视图应显示数据,而不是我认为的任何其他内容。
所以在你的模型中的视图的路上解码/编码。
答案 1 :(得分:1)
格里格斯的海报是正确的。在ASP.NET MVC 1.0中,Html.Textbox帮助程序为您清理输入。
您可能还想了解下一版ASP.NET中新的HTML编码块语法 - 您可以在此处阅读:
答案 2 :(得分:0)
试试这个:
<%=Html.TextBox( "name", Html.Encode(var_value) , new { @class = 'css-class" } );%>