Хранение словаря <TKey, TValue> в изолированном хранилище - PullRequest
3 голосов
/ 27 сентября 2011

Я подключаюсь к серверу и получаю некоторые данные, анализирую эти данные и сохраняю их в Dictionary<TKey, TValue>.

Я храню этот список Dictionary<TKey, TValue> в изолированном хранилище.Теперь проблема заключается в том, что всякий раз, когда я пытаюсь получить Dictionary<TKey, TValue> (во 2-м прогоне) то, что когда-либо сохранялось в 1-м прогоне, значения для каждого ключа в компоненте становились бы нулевыми.Я не знаю, неправильный ли способ хранения Dictionary<TKey, TValue>.

Пример кода:

CacheManager.getInstance().PersistData(CacheManager.SERVICE_TABLE, 
    dictionaryList);

public void PersistData(string storageName, object dict)
{
    try
    {
        PersistDataStore.Add(storageName, dict);
        PersistDataStore.Save();
    }
    catch (Exception ex)
    {
    }
}

1 Ответ

2 голосов
/ 28 сентября 2011

Я получил решение проблемы, члены словаря dict должны быть сериализованы. т.е.

using System.Runtime.Serialization;
[DataContact]
public class classname()
{
[datamember]
public int propertyname;
}
...