1
有没有人知道我如何截取页面的HTML并阻止它回到客户端?在ASP.Net中拦截HTTP MVC 2
我试过以下,在一个控制器方法:
var writer = new StringWriter();
var response = new HttpResponse(writer);
var context = new HttpContext(existingContext.Request, response) { User = existingContext.User };
System.Web.HttpContext.Current = context;
//The method controller method returning an ActionResult for the page I want to render
var ViewResult = ControllerMethod();
ViewResult.ExecuteResult(this.ControllerContext);
string html = writer.ToString();
我认为,在这一点上,HTML字符串应该有一个将被呈现在页面的HTML。就目前而言,html变量是一个空字符串。我怀疑这是因为设置System.Web.HttpContext.Current不会影响控制器的HTTP上下文。这是否是一个可能的原因,如果是的话,是否有一个批准的方式来设置上下文,因为该属性是只读的?
我试图通过捕获正在创建的原始HTML并将其传递给第三方组件来呈现PDF页面。包含上述代码的控制器操作将采用原始HTML并将其转换为PDF,然后返回。
看起来有前途的感谢 - 我给一个去! – 2010-10-20 13:09:07