如何在代码隐藏中将值设置为<p>?

时间:2015-10-14 23:48:44

标签: asp.net

我想将值设置为后面代码中的段落元素,以便结果如下所示:

 <p runat="server" id="txtShutDown"><!--#include File="ShutDown.inc"--></p>

我试过了:

txtShutDown.InnerText = "<!--#include File=\"ShutDown.inc\"-->";

txtShutDown.InnerHtml = "<!--#include File=\"ShutDown.inc\"-->";

但不起作用。

1 个答案:

答案 0 :(得分:1)

(说实话,我真的很惊讶这一点,说实话!)

ASP.NET ASPX文件解析器支持SSI(服务器端包含)语法作为Classic ASP 3.0的遗留(并且也非常缺乏文档)。我很惊讶它的工作原理,我很好奇第一个例子的渲染结果是什么,因为它将HtmlControl实例(HtmlGenericControl("p"))与SSI混合在一起。我想,ShutDown.inc的内容被解析器设置为<p>的静态文本内容,并且尝试包含另一个.aspx文件将导致解析错误,因为它会遇到{ {1}}指令两次。

“包含”进程在ASPX解析器本身的ASP.NET管道中更早发生。您无法在ASP.NET页面管道/生命周期中稍后调用此操作。

如果您想要原始文本包含,那么您需要手动执行,如下所示:

@Page