powered by simpleCommunicator - 2.0.56     © 2025 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / WinForms, .Net Framework [игнор отключен] [закрыт для гостей] / Как сериализовать в XML объект заранее неизвестного типа
11 сообщений из 11, страница 1 из 1
Как сериализовать в XML объект заранее неизвестного типа
    #38187326
JohnSparrow
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Доброго времени суток

Имеется объект, реализующий интерфейс ISettings. Внутри данного объекта имеется словарь дочерних объектов, реализующих интерфейс ISettings и т.д. Типы самих объектов заранее неизвестны, они задаются владельцами настроек и сохраняются в виде описанного выше графа.

Вопрос: каким образом можно сериализовать в XML объект, если его тип заранее неизвестен?
Я нашел подходящий сериализатор , но он при использовании делает что-то нехорошее с контекстом отладки в MSVS 2012, поэтому хотелось бы что-то более надежное и безопасное.
...
Рейтинг: 0 / 0
Как сериализовать в XML объект заранее неизвестного типа
    #38187839
Фотография pation
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
JohnSparrowЯ нашел подходящий сериализатор , но он при использовании делает что-то нехорошее с контекстом отладки в MSVS 2012, поэтому хотелось бы что-то более надежное и безопасное.
что?
...
Рейтинг: 0 / 0
Как сериализовать в XML объект заранее неизвестного типа
    #38187989
Фотография МСУ
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Если класс заранее не известен, то самый простой способ (без лишнего кода и заморочек по переопределению сериалайзера) - DataTable. Маппишь свой класс в DataTable => сериалайз => десериалайз => маппинг на класс.
...
Рейтинг: 0 / 0
Как сериализовать в XML объект заранее неизвестного типа
    #38188358
Фотография pation
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
МСУЕсли класс заранее не известен, то самый простой способ (без лишнего кода и заморочек по переопределению сериалайзера) - DataTable. Маппишь свой класс в DataTable => сериалайз => десериалайз => маппинг на класс.
нет, самый простой это байнериформатер + бейз64 и обернуть это всё тегом
...
Рейтинг: 0 / 0
Как сериализовать в XML объект заранее неизвестного типа
    #38188360
Фотография pation
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
pationМСУЕсли класс заранее не известен, то самый простой способ (без лишнего кода и заморочек по переопределению сериалайзера) - DataTable. Маппишь свой класс в DataTable => сериалайз => десериалайз => маппинг на класс.
нет, самый простой это байнериформатер + бейз64 и обернуть это всё тегом
так делает редактор ресурсов
...
Рейтинг: 0 / 0
Как сериализовать в XML объект заранее неизвестного типа
    #38188377
Фотография МСУ
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
pationнет, самый простой это байнериформатер + бейз64 и обернуть это всё тегом
Ну так не честно :)
...
Рейтинг: 0 / 0
Как сериализовать в XML объект заранее неизвестного типа
    #38188401
Фотография МСУ
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
...
Рейтинг: 0 / 0
Как сериализовать в XML объект заранее неизвестного типа
    #38188859
JohnSparrow
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Большое спасибо за помощь, буду пробовать.
Но вообще идея, например, с BinaryFormatter, не очень подходит, т.к. нужно оставить возможность редактирования настроек правкой строк XML-файла.

pation , вот что я имел в виду, когда говорил, что компонент делает что-то нехорошее с контекстом отладки: /topic/1010329
...
Рейтинг: 0 / 0
Как сериализовать в XML объект заранее неизвестного типа
    #38188989
SerP1983
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
2JohnSparrow
1) Попробуйте xd.Deserialize() обернуть в try..catch
2) Для сериализации посмотрите в сторону DataContractSerializer и NetDataContractSerializer (например, DataContractSerializer стал поддерживать сериализацию IDictionary)
...
Рейтинг: 0 / 0
Как сериализовать в XML объект заранее неизвестного типа
    #38189031
SeVa
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
SerP19832JohnSparrow
1) Попробуйте xd.Deserialize() обернуть в try..catch
2) Для сериализации посмотрите в сторону DataContractSerializer и NetDataContractSerializer (например, DataContractSerializer стал поддерживать сериализацию IDictionary)

NetDataContractSerializer
...
Рейтинг: 0 / 0
Как сериализовать в XML объект заранее неизвестного типа
    #38189034
SeVa
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
МСУ http://codearticles.ru/home/articleview/1450


Муся, а почему кучку под елочкой посмотреть нельзя? Ты думаешь, чтобы вляпаться народ регистрироваться еще будет?
...
Рейтинг: 0 / 0
11 сообщений из 11, страница 1 из 1
Форумы / WinForms, .Net Framework [игнор отключен] [закрыт для гостей] / Как сериализовать в XML объект заранее неизвестного типа
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]