c# - response.write 在 html 结束标记之后写入,如何从 html 中的响应中替换字符串?

标签 c# global-asax response.write

global.asax中测量请求执行时间在onbeginrequest(启动秒表)和onendrequest(计算差值) .

然后最后请求对结果执行response.write

但是它在结束 html 标记之后写入结果。 基本上附加到末尾。

当前代码行是:

HttpContext.Current.Response.Write(elapsedTime);

是否有一种简单的方法可以将实际 html 中的字符串::actualResult::替换为响应写入的实际结果字符串?

我尝试了很多方法,包括在线搜索,但似乎没有人需要这个,或者我不擅长搜索。我以为我可以以某种方式获得整个响应并从那里替换,但不确定该怎么做... ...Response.GetTheEnitreResponse??.Replace...当然这只是一厢情愿;)

谢谢

最佳答案

您没有具体说明您使用的是 Web 表单、MVC、网页等,但通常这些框架会缓冲响应,该响应已由用户点击的任何页面输出。在所有页面内容(通常用 html 结束标记关闭)都已输出到缓冲区后,您在 onendrequest 中的代码将出现。因此,当您执行 Response.Write 时,您将附加到该 html,因此它位于结束 html 标记之外。

如果你想让时间在页面上可见,你将不得不解析响应并注入(inject)你的字符串。这看起来很难在 ASP.NET 中的 Page 类之外完成。

杂乱无章,还有更好的选择。 Tracing通常是处理这些类型事物的方式。

您可能需要考虑将此信息写入 Glimpse跟踪或以某种方式连接到它的显示中……我对 Glimpse 的描述还不够。

关于c# - response.write 在 html 结束标记之后写入,如何从 html 中的响应中替换字符串?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25686946/

相关文章:

c# - 是否保证在调用链式构造函数之前评估代码契约?

c# - .csproj 中的 CopyToPublishDirectory

asp.net - 获取连接到服务器的在线用户的名称

asp.net - global.asax 和经典 ASP?

c# - 强制 session 开始

asp.net - Response.Write 在标记的特定部分

c# - 有windows phone 8.0平台矩阵式吗?

c# - 如何检查 System.Net.WebClient.DownloadData 是否正在下载二进制文件?

c# - Response.WriteFile 两次写入内容

asp.net - 无法让 C# 制作可下载的 csv