![]() |
|
Модераторы: Partizan, gambit |
![]()
|
|
| draiv |
|
|||
|
Шустрый ![]() Профиль Группа: Участник Сообщений: 95 Регистрация: 23.5.2007 Репутация: нет Всего: нет |
Подскажите плз с сериализацией.
Класс содержит поле типа DataRelation. При двоичной сериализации выдает ошибку: Type 'System.Data.DataRelation' in Assembly 'System.Data, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089' is not marked as serializable. Экземпляры данного класа хранятся в DataTable.ExtendedProperties. При сохранении этих DataTable в xml все нормально проходит, без ошибок, только при загрузке обратно DataTable.ExtendedProperties не восстанавливаются нормально (только хранящие строки). Хочу сохранять DataTable в двоичный файл (ds.RemotingFormat = SerializationFormat.Binary; ds-DataSet), тогда выскакивает описанная ошибка. 1) Подскажите, можно ли вообще добиться, чтобы ExtendedProperties, хранящие не только строки, но и экземпляры других классов можно было корректно восстанавливать из XML или BinaryFile, что для этого нужно? 2)Разьясните плз, что вообще нужно сделать, чтобы к примеру нормально сериализовать мой класс, содержащий DataRelation (да вообще любой класс). Весь класс пометил атрибутом [Serializable]. Класс реализует интерфейс ISerializable, только не знаю точно, что нужно делать в методе GetObjectData(), нужно ли это вообще ? |
|||
|
||||
| tol05 |
|
|||
![]() Эксперт ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 1632 Регистрация: 21.12.2006 Где: Харьков Репутация: 63 Всего: 170 |
Я в свое время вручную реализовывал ISerializable
но я вообще легких путей обычно не ищу, так что я - не показатель Посмотри тут и тут а тут - обязательно короче, гугл в руки... Это сообщение отредактировал(а) tol05 - 5.6.2007, 13:22 -------------------- На хорошей работе и сны хорошие снятся. |
|||
|
||||
![]()
|
| Прежде чем создать тему, посмотрите сюда: | |
|
|
Используйте теги [code=csharp][/code] для подсветки кода. Используйтe чекбокс "транслит" если у Вас нет русских шрифтов. Что делать если Вам помогли, но отблагодарить помощника плюсом в репутацию Вы не можете(не хватает сообщений)? Пишите сюда, или отправляйте репорт. Поставим :) Так же не забывайте отмечать свой вопрос решенным, если он таковым является :) Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, mr.DUDA, THandle. |
| 0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
| 0 Пользователей: | |
| « Предыдущая тема | Общие вопросы по .NET и C# | Следующая тема » |
|
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |