【发布时间】:2013-10-28 19:37:30
【问题描述】:
我在基本控制器中设置了一个属性,以便我可以从每个操作中访问它的值。最初我在OnActionExecuting 方法中放入代码以获取值(来自cookie),该方法有效,但后来我意识到它会在每次操作调用时被调用(由于重复部分视图,某些页面可能会运行数百次)。我怎么能这样做,所以每页只调用一次?
我查看了一个类似的已回答问题...How to call a function *only once* in ASP.NET MVC page cycle 但答案仅涉及 Ajax 请求,这不是我的问题。
【问题讨论】:
-
“每页一次”是什么意思?您确实意识到每次发出 GET 或 POST 请求时[通常]都会创建一个新的控制器实例,不是吗?您可以使用
static属性,但每个应用程序域都会调用一次。要为每个用户会话设置一次,请考虑使用会话状态变量。
标签: asp.net-mvc