我遇到了一个问题,第三方组件似乎干扰Response.Write
并导致其中的任何内容在Response.Write("")
任何其他 html 之前呈现。例如:
<html><head><title><% Response.Write("HELLO WORLD") %>
将呈现为
HELLO WORLD<html><head>...
<%= %>
但是,使用块渲染的任何内容都可以正常工作。以下代码将完美运行:
<html><head><title><%="HELLO WORLD"%>
我一直认为这<%=
只是Response.Write
. 根据我在 MSDN 上找到的内容,我现在了解到它<%=
最终会转换为 Response.Write,但显然中间有几个步骤。
有没有人猜测为什么这两者会呈现不同的效果,或者向我指出一些解释如何<%= %>
处理块的文档/信息?
更新:导致问题的控件是 2009 Q1 版本中的 Telerik AjaxManager 控件。升级到 Q2 控制解决了这个问题。
不幸的是,我无法访问源代码,所以我无法弄清楚为什么控件会导致这种行为。这个问题已经解决了,但我仍然很好奇它为什么存在。