ODATA或ASP.NET中的可插入,可扩展和RESTFUL服务存储库

时间:2012-06-21 02:26:03

标签: asp.net rest odata asp.net-web-api

我将使用ODATA开发服务存储库。因此,我可以通过反射

自动将这些类的公共方法建模为实体类型
  • 标识。 GUID
  • 输出。它应该取决于方法返回的类型
  • ...(任何其他输入参数)

另一方面,我还将这些公共方法暴露为先前定义的实体类型下的实体集。最后,公共用户可以通过将JSON对象POST到特定URI来调用公开服务RESTFULLY,并在ODATA协议的帮助下从返回的JSON对象中检索OUTPUT

不幸的是,实体类型定义中不支持主对象数组或复杂对象数组。因此,我无法定义具有多个TO(string [])或CC(也是string [])的SMTP发送实体类型。如何处理此问题?

我听说微软已经宣布了ODATA V3.0和ASP.NET Web API。这些新技术可以提供帮助吗?或任何其他建议实现可扩展RESTFUL(或HTTP友好,因为我想在html,PHP或任何其他网页直接调用它)?感谢。

1 个答案:

答案 0 :(得分:0)

OData V3支持属性,这些属性是原始值或复杂值的集合。 WCF Data Services V5为自定义和反射提供程序实现了此功能(尚不支持EF提供程序)。

参见例如http://www.odata.org/media/30002/OData%20Atom%20Format.html#collectionofsimpletypedproperties

可以在此处下载最新的WCF数据服务:http://www.nuget.org/packages/Microsoft.Data.Services