Verileri bir WinRT uygulamasında kaydetmenin bazı yolları, adında Ayarlar olan yöntemin muhtemelen sizin aradığınız şeydir! - sadece diğerlerini de ekledik, - ayrıca isterseniz verileri seri hale getirebilirsiniz . Bu, kod çalışıyor ancak hata işleme vs. eklemeyi unutmayın. Basit bir demo kodu var :)
Ayarlara gelince, basit ayarları anahtar ve değerler olarak kaydedebilir ve daha karmaşık ayarlar için bir kap. Burada iki örnek verdim =)
public class StorageExamples
{
public async Task<string> ReadTextFileAsync(string path)
{
var folder = ApplicationData.Current.LocalFolder;
var file = await folder.GetFileAsync(path);
return await FileIO.ReadTextAsync(file);
}
public async void WriteTotextFileAsync(string fileName, string contents)
{
var folder = ApplicationData.Current.LocalFolder;
var file = await folder.CreateFileAsync(fileName, CreationCollisionOption.ReplaceExisting);
await FileIO.WriteTextAsync(file, contents);
}
public void SaveSettings(string key, string contents)
{
ApplicationData.Current.LocalSettings.Values[key] = contents;
}
public string LoadSettings(string key)
{
var settings = ApplicationData.Current.LocalSettings;
return settings.Values[key].ToString();
}
public void SaveSettingsInContainer(string user, string key, string contents)
{
var localSetting = ApplicationData.Current.LocalSettings;
localSetting.CreateContainer(user, ApplicationDataCreateDisposition.Always);
if (localSetting.Containers.ContainsKey(user))
{
localSetting.Containers[user].Values[key] = contents;
}
}
}
Çok teşekkür ederim, ama şu an sorum şu: Bir dosyadaki tüm ayarları bir şekilde kaydedemiyorum ...? Sadece uygulama başlatıldığında onlara ihtiyaç duyduğumda dosyadan metin satırlarını okumak veya o dosyayı ne zaman kaydedileceği gibi yeniden yazmak mı? Bu iyi bir uygulama mı? – VasileF
Kapsayıcı size bu olanağı sunar - sadece değiştirmek istediğiniz tuşların değerini güncelleyin. –
Ve çok fazla veri varsa SQLite gibi küçük bir veritabanı da kullanabilirsiniz, bunun için bir .Net sarıcı var, - sadece async uygulamasını kullandığınızdan emin olun. Kompozit/kapsayıcı ayarlarının bize anlattıklarınıza göre kullanılmasını tavsiye ediyorum. –