ASP.NET MVC在输出之前更改标记

时间:2010-03-15 11:25:00

标签: c# asp.net asp.net-mvc

请原谅我有限的知识。

过去我在运行时默认使用Steve Sanderson的HTML编码方法:http://blog.stevensanderson.com/2007/12/19/aspnet-mvc-prevent-xss-with-automatic-html-encoding/

我需要在用户浏览器中吐出之前更改img srca href属性。有一个使用JavaScript的解决方案,但由于几个原因,这不是理想的。拦截编译器不是一种选择,因为不必要地使用Response.Write来处理普通的HTML。

我可以用HTTP模块或视图引擎做什么吗?

有什么想法吗?

更新:我不需要对属性进行HTML编码,但我确实需要更改它们。

干杯。

1 个答案:

答案 0 :(得分:3)

使用response filter。适用于任何ASP.NET项目,包括MVC。即使您使用不同的视图引擎也应该工作,因为它会在较低级别进行拦截。

以下是剥离空白的实际示例:

http://www.4guysfromrolla.com/articles/120308-1.aspx

我之前使用过这个来重写链接,然后再发送给客户端,但我目前找不到代码。