Проблемы с бинарной десериализацией - может кто-нибудь помочь?

2

У меня такая же проблема, как и в этом сообщении:

http://social.microsoft.com/Forums/en-US/netfxbcl/thread/10027dd8-da47-4691-91a6-a8b89a7f514a

Кто-нибудь знает возможный ответ/решение? Смешно, что у меня есть 2 коллекции в моем сериализуемом классе (двоичная сериализация). Один из них - List, один - словарь. Список List в порядке, Словарь возвращает 0 как свойство Count в методе [Deserialized].

Что еще более странно, так как после десериализации работа с объектом класса в порядке. Все модульные тесты против коллекции словарей проходят. Это разочаровывает меня до конца, потому что я хочу работать с объектом Dictionary сразу после десериализации, но я не могу из-за этой странной ошибки. Может кто-нибудь помочь?

  • 0
    Можете ли вы опубликовать код? Возможно, вы упускаете что-то, что может обнаружить тысяча пар глаз.
Теги:
dictionary
serialization

1 ответ

5
Лучший ответ

Да; см. здесь; вам просто нужно попросить словарь завершить десериализацию:

public void OnDeserialization(object sender)
{
        this.Dictionary.OnDeserialization(sender);
}
  • 0
    Вы не представляете, сколько времени я потратил на это. Большое вам спасибо за это. Я наконец могу отдохнуть и перейти к кодированию интересных функций.
  • 0
    Это в тысячу раз больше! Также хочу добавить, что это работает и с методами, приписанными методу [OnDeserialized], просто передайте StreamingContext в качестве отправителя.

Ещё вопросы

Сообщество Overcoder
Наверх
Меню