我想在App.xaml.cs中有一个属性,看起来像:
private static Settings _settings = null;
public static Settings AppSettings
{
get
{
if(_settings == null)
_settings = await Settings.Deserialize();
return _settings;
}
}
在Settings.Descialize()中,我正在从文件中读取设置,以便它有下一个签名:
public static async Task<Settings> Deserialize() { ... }
我不能在物业内使用等待。但在这种情况下,什么是好的解决方案?
生成getter和setter函数,而不是属性。首先,您不应该将属性用于有副作用的东西(没有保存到存储/db/web服务或从存储/db/web服务等)