2013-07-18 2 views
0

У меня есть наблюдаемая коллекция, которая говорит «OB», которая должна быть сериализована до того, как ее можно отправить для функций печати.Как сериализовать ObservableCollection в C#?

я получил предложение о том, чтобы сделать его как класс, как указано ниже

public class OBCollection : ObservableCollection<ViewModel> 
{ 
} 

И использовать OBCollection вместо «OB», но это не работает.

Любые предложения по этому вопросу?

Я пробовал ниже вещи:

  • Маркировка класса как Serializable.
  • Маркировка наблюдаемой коллекции в качестве элемента данных.
  • Добавление безразмерного конструктора в класс, в котором наблюдаемая коллекция является частью.
+0

«это не работает» не очень ясное объяснение вашей проблемы. Обратите внимание, что может быть гораздо проще напрямую спросить человека, который «предложил, чтобы сделать его классом как ...». –

+0

Вышеуказанное предложение было предоставлено в качестве руководства, и данное лицо недоступно сейчас. –

ответ

0

ObservableCollection<T> реализует IEnumerable<T>, так что вы должны быть в состоянии преобразовать его к List<T> или T[] достаточно просто с ToList()/ToArray() расширений. Оба из них могут быть сериализованы с DataContractSerializer без проблем (до тех пор, пока атрибуты правильно применяются).

Смежные вопросы