Tôi đang cố gắng lưu hai Danh sách các đối tượng trong PhoneSettings trên điện thoại, nhưng tôi bị kẹt ở một vấn đề lạ (Nhưng có lẽ tôi đang mắc lỗi ngớ ngẩn ở đâu đó).ApplicationSettings không được lưu đúng cách
Nếu tôi chỉ lưu một trong các danh sách, nó hoạt động như được cho phép - Nó sẽ lưu và tải lại khi ứng dụng được khởi chạy vào lần tiếp theo. Nhưng nếu tôi cố gắng lưu 2 danh sách, không có danh sách nào trong số đó được lưu chính xác. Không có lỗi hoặc bất cứ điều gì, chỉ cần "trống".
Xem mã bên dưới.
//My save method
public void Gem()
{
var settings = IsolatedStorageSettings.ApplicationSettings;
if (settings.Contains(INDTASTNINGER_LIST))
{
settings[INDTASTNINGER_LIST] = _indtastningsListe;
}
else
settings.Add(INDTASTNINGER_LIST, _indtastningsListe);
if (settings.Contains(INDTASTNINGER_LIST2))
{
settings[INDTASTNINGER_LIST2] = _indtastningsListe2;
}
else
settings.Add(INDTASTNINGER_LIST2, _indtastningsListe2);
settings.Save();
}
//Constructor supposed to load settings
public Indtastninger()
{
var settings = IsolatedStorageSettings.ApplicationSettings;
if (settings.Contains(INDTASTNINGER_LIST))
{
_indtastningsListe = null;
_indtastningsListe = (List<Indtastning>)settings[INDTASTNINGER_LIST];
}
if (settings.Contains(INDTASTNINGER_LIST2))
{
_indtastningsListe2 = null;
_indtastningsListe2 = (List<Indtastning>)settings[INDTASTNINGER_LIST2];
}
}
Tôi đang làm gì sai? Nếu tôi nhận xét phần có nội dung "list2", nội dung đầu tiên sẽ được lưu/truy xuất hoàn hảo.
Và có lẽ tôi nên thêm rằng nó không tạo ra sự khác biệt nào trong danh sách tôi nhận xét. Vẫn thành công với một, nhưng với hai, không có gì được lưu/lấy ra. –
Bạn đang sử dụng phiên bản SDK nào? Tôi dường như không thể lặp lại điều này trên RC. –
Điều gì xảy ra nếu bạn thêm 'settings.Save()' vào giữa. Nó có thể là serialization của danh sách thứ hai là phá vỡ và không gọi là 'save()' –