为REST对象生成合同

时间:2011-02-08 22:46:43

标签: c# rest windows-phone-7 code-contracts

我是REST的新手,听起来应该很简单。在.NET应用程序中,我可以创建对WCF服务的引用,并为我生成所有可用类型的合同。

现在我正在尝试在Windows Phone 7应用程序中使用REST服务。虽然我可以进行调用并获得正确的响应,但是有一种简单的方法来创建每个对象将被反序列化的类吗?

我正在使用RestSharp管理我的通话。在我看到的一些例子中,用户已经创建了自己的类,并手动生成了xml。如果可能的话,我想避免这种情况。

非常感谢!

2 个答案:

答案 0 :(得分:9)

假设您的响应是XML,您可以将xml保存到文件中,然后在其上调用xsd.exe以生成模式。在架构上调用xsd.exe,它将生成一个c#类文件,您可以从xml中串行化和反序列化。以下是有关XSD.exe如何工作的文档:

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

答案 1 :(得分:3)

您必须生成响应数据将映射到的类(或者如果您使用的是.NET 4,则使用动态反序列化方案),因为REST不像SOAP那样包含模式定义系统。在RestSharp中,there's a T4 helper to make generating the C# classes easier。它可以让你大约80%的方式。如果您需要任何帮助,请发布到RestSharp Google Group