代码块中的Response.Write输出出现在html外部

时间:2011-08-03 18:35:16

标签: c# .net html layout response.write

暂不讨论是否应该在.aspx的HTML部分中使用Response.Write,在我正在处理后面代码中的变量的项目中使用Response.Write显示在前端。它过去工作正常,但项目中的某些东西最近发生了变化(另一个开发团队正在研究它,所以我不确切知道发生了什么)但现在所有的Response.Write代码块都显示在页面的顶部。我可能已经改变的唯一线索是最近的一些AJAX功能被添加到项目中。

1 个答案:

答案 0 :(得分:1)

Response.Write写入响应流。在响应流的开头添加数据的原因只能是在任何ASP.NET Response.Write启动之前触发语句的事件。

您通常应该覆盖RenderRenderChildrenRenderControl以放入您的Response.Writes,并确保调用正确的父方法,否则只有您的语句可见。或者,将Response.Write放在服务器标签<% %>中或使用Naveed的建议(无论如何,btw内部转换为Response.Write,但更清晰,更容易编写)。

以下扩展聊天的编辑摘要:原因在Telerik RadAjax.Net2控件中找到。删除后,问题就消失了。安德烈亚斯自己解决了。