在一次考试中,我必须找出关于ASP.NET的这道题的答案。
问题是,如果我们有一个名为'pagehits'的变量,并且我们在page_init和page_load 函数中将该变量增加1。从20个不同的客户端发出20个请求后,'pagehits'的最终值是什么?我知道page_init只触发一次,但如果20个不同的**用户发送请求,它会触发多少次呢?我们知道在这个场景中Page_Load函数触发了20次;page_init是只触发一次还是对所有20个客户端都触发?
这个答案是 * 页面点击数=21* 正确还是40?
'pagehits'默认值为零。
非常感谢
1条答案
按热度按时间wpcxdonn1#
page_init是只触发一次还是对所有20个客户端都触发?
Init
和Load
之间的唯一区别是 * 何时 * 触发:Init
先出现,Load
后出现。有关详细信息,请参阅以下问题:请注意,如果同一个客户机发出另一个请求,
Page_Init
和Page_Load
都会再次触发,因此这种技术不适合计算"unique visitor"。答案是pagehits = 21正确还是40?
如果
pagehits
是静态的,它将是40。如果pagehits
不是静态的,每个请求都有自己的变量示例,使这个问题变得没有实际意义。但是,请注意,当应用程序池回收时,静态变量的值将丢失。如果该值对您很重要,您需要将它 * 持久化 * 在某个地方,例如,在数据库或文件中。