Генерация контрактов для объектов REST - PullRequest
9 голосов
/ 09 февраля 2011

Я новичок в REST, и это звучит так, как будто это должно быть довольно просто.В приложении .NET я могу создать ссылку на службу WCF, и для меня будут созданы контракты для всех доступных типов.

Теперь я пытаюсь использовать службу REST в Windows Phone 7приложение.Несмотря на то, что я могу сделать свой вызов и получить правильный ответ, есть ли простой способ создать классы, в которые будет десериализован каждый объект?

Я использую RestSharp для управления своими звонками.В некоторых примерах, которые я видел, пользователь создал свои собственные классы и сгенерировал XML вручную.Я хотел бы избежать этого, если это вообще возможно.

большое спасибо!

Ответы [ 2 ]

9 голосов
/ 09 февраля 2011

Если ваш ответ - XML, вы можете сохранить xml в файл, а затем вызвать xsd.exe, чтобы сгенерировать схему.Вызовите xsd.exe в схеме, и он сгенерирует файл класса ac #, который можно сериализовать и десериализовать из xml.Вот документация о том, как работает XSD.exe:

http://msdn.microsoft.com/en-us/library/x6c1kb0s(v=VS.100).aspx

3 голосов
/ 09 февраля 2011

Вы должны сгенерировать классы, на которые будут отображаться ваши данные ответов (или использовать схему динамической десериализации, если вы используете .NET 4), поскольку REST не включает систему определения схемы, как это делает SOAP. В RestSharp есть помощник T4, который упрощает генерацию классов C # . Это дает вам около 80% пути туда. Если вам нужна помощь, отправьте сообщение в RestSharp Google Group .

...