【发布时间】:2015-12-20 07:52:16
【问题描述】:
试图找到答案,但我没有找到任何信息......
我已经根据以下示例构建了一个完整的属性:
private static Foo _foo;
public static Foo foo {
get
{
if (_foo!= null)
return _foo;
//else do some logic and fill _foo;
_foo = ....;
}};
问题是,根据页面的生命周期,_foo 什么时候会为空? 在第一次加载时,它当然会为空,但什么时候会再次为空?在回收?在iisreset上?还是页面重新加载?
此属性位于类库(外部 dll)上
【问题讨论】:
-
链接问题中接受的答案是您问题的答案 - 尽管它与变量是否为
private无关。 -
不,这是一个关于 MVC 中的生命周期的问题,而不是关于 C# 静态的问题。
-
旁注,该属性的正确命名是
public static Foo Foo {...}
标签: c# asp.net-mvc