我们能否将Odata元数据转换为c#代码(数据契约)

本文关键字:代码 数据 契约 转换 Odata 元数据 我们 | 更新日期: 2023-09-27 18:07:15

有一个odata webservice,我可以从

获得元数据
http://service-uri.com/$metadata

包含所有模型对象的定义,

有什么工具,我可以使用,转换元数据xml到数据合同类在c# ?

我们能否将Odata元数据转换为c#代码(数据契约)

WCF Data Services Client库可以从$metadata端点为你生成c#类。这些类没有[DataContract]属性,但是您可以将它们与客户端库的其余部分一起使用以与服务交互。

要使用此功能,请下载最新的客户端库"工具"安装程序,目前可在此获得:http://www.microsoft.com/en-us/download/details.aspx?id=35840

(注意:如果您想要客户端库的最新稳定位,还可以在Visual Studio的Package Manager Console窗口中运行以下命令:Install-Package Microsoft.Data.Services.Client)

然后,在Visual Studio中,你可以右键单击你的项目,选择"Add Service Reference"。在这里,您可以输入服务的$metadata URL,相应的类将生成,以及可以用来与服务交互的DataServiceContext类。有关查询服务的更多信息,请参阅此文档:http://msdn.microsoft.com/en-us/library/dd673933.aspx

或者,如果您想手动生成这些类,您可以使用工具安装程序附带的DataSvcUtil.exe命令行工具。例如,在我的系统中,该文件位于C:'Program Files (x86)'Microsoft WCF Data Services'Current'bin'tools'DataSvcUtil.exe

有关如何使用此工具的说明,请查看此页面:http://msdn.microsoft.com/en-us/library/dd756369.aspx