自动 属性 能用多久?
How long does an auto property last?
我找不到任何关于自动 属性 在应用程序中持续多长时间的信息?
我的意思是它们是否在应用程序 运行 的整个时间内保持默认值?
即,如果我像下面的示例代码一样在启动时初始化一个自动 属性,
namespace MyApplication
{
/// <summary>
/// Interaction logic for MainWindow.xaml
/// </summary>
public partial class MainWindow
{
public MainWindow()
{
example = "SomeString";
InitializeComponent();
}
.....////other stuff
public static string example { get; set; }
}
}
是否会在整个应用程序中保留该值 运行?除了可以通过重新分配或通过 INotifyPropertyChanged
更改值之外,在某些情况下值会丢失并需要重新分配吗?
如果值会丢失,原因是什么?
注意:我检查了 automatic-properties
上的所有标签,所以如果这是重复的,请告诉我,因为我在搜索中找不到任何内容。
静态自动 属性 的生命周期与自动 属性 完全无关,而是由 static
限定符决定。
如documentation所述:
A static variable comes into existence before execution of the static constructor for its containing type, and ceases to exist when the associated application domain ceases to exist.
静态自动值 属性 的管理方式与任何其他变量的管理方式相同。
我找不到任何关于自动 属性 在应用程序中持续多长时间的信息?
我的意思是它们是否在应用程序 运行 的整个时间内保持默认值? 即,如果我像下面的示例代码一样在启动时初始化一个自动 属性,
namespace MyApplication
{
/// <summary>
/// Interaction logic for MainWindow.xaml
/// </summary>
public partial class MainWindow
{
public MainWindow()
{
example = "SomeString";
InitializeComponent();
}
.....////other stuff
public static string example { get; set; }
}
}
是否会在整个应用程序中保留该值 运行?除了可以通过重新分配或通过 INotifyPropertyChanged
更改值之外,在某些情况下值会丢失并需要重新分配吗?
如果值会丢失,原因是什么?
注意:我检查了 automatic-properties
上的所有标签,所以如果这是重复的,请告诉我,因为我在搜索中找不到任何内容。
静态自动 属性 的生命周期与自动 属性 完全无关,而是由 static
限定符决定。
如documentation所述:
A static variable comes into existence before execution of the static constructor for its containing type, and ceases to exist when the associated application domain ceases to exist.
静态自动值 属性 的管理方式与任何其他变量的管理方式相同。