有人知道默认情况下ASP.NET Server.Execute()命令是否在当前用户会话的上下文中缓存答复吗?我看到了奇怪的行为,只能以此来解释。 Server.Execute()方法生成的内容适用于特定用户的早期会话变量集,而不是当前会话变量集。但是这种缓存问题/错误永远不会在不同的用户会话中展现出来-当然,这可能是灾难性的。
示例(VB),假设页面DisplayA.aspx写入了会话变量“ A”的内容:
用户1会话:
Session("A") = "Apples"
Server.Execute("DisplayA.aspx")
输出就像A =“ Apples”。下一个网络请求:
用户1会话:
Session("A") = "Bananas"
Server.Execute("DisplayA.aspx")
输出仍然像A =“ Apples”
现在我们有一个用户2会话:
Session("A") = "Peaches"
Server.Execute("DisplayA.aspx")
输出就像A =“桃子”
有没有记录这种行为的资源?
谢谢。