自动转义Asp.NETMVC

自动转义Asp.NETMVC,asp.net,asp.net-mvc,escaping,Asp.net,Asp.net Mvc,Escaping,在Asp.net Mvc应用程序中,默认情况下,所有字符串输出都是不可转义的,要么记住使用HTTPUtility转义所有内容,要么让自己面临XSS攻击 现在我是一个健忘的人,所以我正在寻找一个解决方案,帮助我“不要忘记”为我摆脱所有的束缚 任何人都可以分享他们使用过的使转义所有Asp.net MVC输出更容易的技术吗?我想你会发现很多东西不是MVC“内置”的,因为这是它的核心价值之一:它足够灵活,可以给你很多控制,因此它希望你自己做一些事情 但是,请检查,特别是FluentHtml;我相信默认情

在Asp.net Mvc应用程序中,默认情况下,所有字符串输出都是不可转义的,要么记住使用HTTPUtility转义所有内容,要么让自己面临XSS攻击

现在我是一个健忘的人,所以我正在寻找一个解决方案,帮助我“不要忘记”为我摆脱所有的束缚


任何人都可以分享他们使用过的使转义所有Asp.net MVC输出更容易的技术吗?

我想你会发现很多东西不是MVC“内置”的,因为这是它的核心价值之一:它足够灵活,可以给你很多控制,因此它希望你自己做一些事情


但是,请检查,特别是FluentHtml;我相信默认情况下它会为您编码。

jfar,您想要的是绝对可能的,请参阅这篇优秀的博文:


Steve Sanderson一步一步地解释了如何更改“”行为,从CSharpCodeProvider类重写GenerateCodeFromStatement()方法,这是一件很酷的事情。清理了大量的HttpUtility.HtmlEncode调用,并与asp.net mvc配合得很好。

在asp.net 4.0推出新语法之前,这似乎是最好的选择。请参阅此链接: