我正在为windows rt实现一个Windows应用商店应用程序。它使用backgroundtask来更新其tile。我希望能够配置后台任务和应用程序在执行工作时使用相同的URL,因此我想使用统一或集中配置。现在我使用一些* .resw文件来配置我的Windows应用商店应用程序中的某些方面。如何将此配置传递给后台任务?
答案 0 :(得分:2)
最简单的方法是使用ApplicationData.Current.LocalSettings
这是我在我的应用程序中使用的包装器示例:
public class SettingsService
{
private readonly ApplicationDataContainer _container;
public SettingsService()
{
var localSettings = ApplicationData.Current.LocalSettings;
if (!localSettings.Containers.ContainsKey("AppSettings"))
{
_container = localSettings.CreateContainer("AppSettings", ApplicationDataCreateDisposition.Always);
}
else
{
_container = localSettings.Containers["AppSettings"];
}
}
private T GetValue<T>(string key, T @default)
{
if (_container.Values.ContainsKey(key))
{
return (T)_container.Values[key];
}
return @default;
}
private void SetValue(string key, object value)
{
if (!_container.Values.ContainsKey(key))
{
_container.Values.Add(key, value);
}
else
{
_container.Values[key] = value;
}
}
//Any setting
public bool IsFirstLaunch
{
get { return GetValue("IsFirstLaunch", true); }
set { SetValue("IsFirstLaunch", value); }
}
}
答案 1 :(得分:1)
奇怪的是,我在一个不同的主题中回答了我自己的问题