Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / ADO.NET, LINQ, Entity Framework, NHibernate, DAL, ORM [игнор отключен] [закрыт для гостей] / Сериализация XDocument / 9 сообщений из 9, страница 1 из 1
09.12.2008, 01:48
    #35701428
XLinq
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Сериализация XDocument
Ну давайте оживлять эту ветку! :)

XDocument, в отличие от XElement невозможно передать через веб-сервис.
Выходов несколько.
1. ToString();
2. Передавать XElement и потом XDocument.TryParse(xelement.InnerXML);
3. Сериализация.

Первые 2 примера тривиальны. До третьего не дошли руки. Кто поможет - тот молодец. :)
...
Рейтинг: 0 / 0
09.12.2008, 10:44
    #35701858
goodbit
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Сериализация XDocument
Зачем сериализация xml-элемента ???
...
Рейтинг: 0 / 0
09.12.2008, 12:00
    #35702135
Изопропил
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Сериализация XDocument
зачем парсить InnerXML ? XDocument из XElement просто конструктором XDocument создаётся
...
Рейтинг: 0 / 0
09.12.2008, 12:08
    #35702166
XLinq
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Сериализация XDocument
Изопропилзачем парсить InnerXML ? XDocument из XElement просто конструктором XDocument создаётся
Не суть важно. У XDocument много конструкторов.
goodbitЗачем сериализация xml-элемента ???
В виду того, что при попытке передать XDocument через Web Service выдаётся ошибка:
Код: plaintext
System.Xml.Linq.XDeclaration cannot be serialized because it does not have a parameterless constructor
...
Рейтинг: 0 / 0
09.12.2008, 15:48
    #35703096
bured
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Сериализация XDocument
Можно попробовать создать DataContract: 1 поле XDeclaration.ToString(), 2 поле XElement где будет всё остальное.
Хотя имхо велосипед. Веб-сервисы нужны для передачи данных, а не XDeclaration.
...
Рейтинг: 0 / 0
10.12.2008, 04:56
    #35704284
gp
gp
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Сериализация XDocument
Вы будете смеяться, но XDocument не представляет собой данные Xml - XDocument - это семантически - файл. Так что нет проблем передавать его хоть строкой, хоть byte[].

Вообще, зачем вы используете XDocument? Используйте XElement.
XDocument содержит единственный коренной элемент. Вот для него используйте XElement, его и передавайте.

Если вы ждете, что вы сформируете XDocument который должен подменить собой Xml документ, который будет реально передан в результате вызова вебсервиса, то вы этого не добетесь, потому что вызов вебсервиса уже включает этот функционал.

XmlRootAttribute поможет вам сформировать для класса сериализацию таким образом, чтобы корневой элемент назывался как вам надо.

Смотрите XML Serialization with XML Web Services
...
Рейтинг: 0 / 0
10.12.2008, 07:13
    #35704330
XLinq
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Сериализация XDocument
gp, если вы внимательно прочтёте мой первый пост, я об этом и говорил. :)
Вопрос был в том, кто не поленится сериализовать.
...
Рейтинг: 0 / 0
10.12.2008, 11:34
    #35704803
gp
gp
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Сериализация XDocument
XLinq В 1775 году Парижская академия наук приняла решения не рассматривать заявки на патентование вечного двигателя из-за очевидной невозможности их создания.
так вот - вы не велосипед изобретаете, а именно вечный двигатель, и ваш пост я, конечно, распечатю и повешу в золотой рамке, как пример такой абсурдной заявки наших времен. С сериализацией и так ясно - не сериализуется.
...
Рейтинг: 0 / 0
10.12.2008, 15:55
    #35705854
XLinq
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Сериализация XDocument
gp, offtop конечно, но пожалуй дурацкая идея была у меня :)
...
Рейтинг: 0 / 0
Форумы / ADO.NET, LINQ, Entity Framework, NHibernate, DAL, ORM [игнор отключен] [закрыт для гостей] / Сериализация XDocument / 9 сообщений из 9, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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