Взаимодействие Silverlight с веб-сервисами DataSet

StackOverflow https://stackoverflow.com/questions/92323

  •  01-07-2019
  •  | 
  •  

Вопрос

Мой коллега оказался в "интересной" ситуации.Он работает над прототипом Silverlight (2.0), который должен вызывать существующие веб-службы на предприятии и привязывать возвращаемые данные к элементам управления отображением данных.Дело в том, что веб-сервисы возвращают наборы данных .NET (они не собираются изменять существующие реализации), а Silverlight изначально не поддерживает наборы данных.

Каким было бы хорошее обходное решение?Я думал о шаблоне адаптера, но не знаю, были бы ли веб-сервисы среднего уровня для выполнения преобразований очень хорошей идеей.Это может быть утомительно, если существует много существующих веб-сервисов.

Это было полезно?

Решение

AFAIK, когда веб-служба .NET возвращает DataSet, она возвращает его XML-представление (что довольно удобно).Тот факт, что клиент .NET может использовать DataSet напрямую, только абстрагирует тот факт, что происходит сериализация-десериализация Xml.

Поэтому я бы вручную запросил требуемые вам веб-сервисы, просмотрел сгенерированный XML-файл, а затем проанализировал его на стороне клиента.

Другая возможность заключается в том, чтобы воспользоваться тем фактом, что веб-службы используют стандартный XML-сериализатор, чтобы вы могли создавать классы C # из возвращенной схемы, а затем позволить XmlSerializer автоматически обрабатывать ее.Я не уверен, будет ли код, сгенерированный инструментом XSD.exe, дружественным к Silverlight, но попробовать стоит.

Другие советы

Попробуйте следующее: http://silverlightdataset.net

Опасности и общая мерзость наборов данных, да.Я бы использовал универсальный прокси, который отвечает за использование веб-метода и преобразование набора данных в xml / json

Ага, сильверлайт ds это отличное решение, у них даже есть встроенные в него отношения

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top