检查ASP生成了哪些HTML标签.. NET MVC 4 Html助手



在ASP中调试视图时。. NET MVC 4,我想知道在HTML helper调用后生成了什么HTML标签。假设视图中有一个呼叫Html.EditorFor(x => x.Name)。我在视图中的这个调用之后设置了一个断点。当它在调试时停在这里时,现在我想检查在发送到呈现之前,该HTML帮助器究竟生成了哪些HTML标记。有办法做到这一点吗?谢谢你,

注意事项:-

它将始终是HTML helper总是,直到渲染事件不会出现在图片中,所以在渲染事件之前,您将始终只得到HTML helper。

可以在开发工具中看到呈现的HTML。

我发现在ASP。NET MVC4,如果Razor是视图引擎,那么简单。在调试视图期间,以下代码可以显示迄今为止在Watch窗口中构造的HTML字符串(在VS2012中检查)。

this.ViewContext.Writer // System.IO.TextWriter {System.IO.StringWriter}
this.ViewContext.Writer.ToString()

this.GetOutputWriter()  // it returns this.ViewContext.Writer.

如果使用传统的aspx视图引擎,我还没有找到一个类似的方式来显示它在调试视图期间,因为我不能得到它的WriterInnerWriter属性如下所示。但是我们总是可以使用VS2015来调试视图,VS2015的新特性Locals窗口中显示函数调用的刚刚返回的值,可以告诉我们上次HTML helper调用返回的构造的HTML字符串:)

this.Writer //  {System.Web.UI.HtmlTextWriter}
this.Writer.InnerWriter // System.IO.TextWriter {System.Web.Mvc.ViewPage.SwitchWriter}

最新更新