Asp.net Core项目中配置Odata步骤和参考资料

OData - Open Data Protocol,是一个设计和使用RESTful API的标准。OData的理想是, 无论哪个组织构建的RESTful API,只要其符合OData标准。其他组织就可以按照OData标准中定义的方式去使用这个API获取/修改资源。标准化的另一个好处:可以将Odata协议实现到一个通用的类库中,通过这个类库去创建和访问RESTful API可以减少开发人员的工作量。官网上有很多这样的组件。该标准由微软发起,第四个版本4.0于2014年3月17日在OASIS投票通过成为开放工业标准。

本文主要是记录在asp.net core web api项目中配置odata库的过程以及一些有用的参考资料。如有错误,请指正。

1.项目配置步骤:

odata配置参考:http://odata.github.io/WebApi/#14-02-enableNoDollarQueryOptions

odata的底层使用ef框架,而.netcore使用的是ef core版本,此版本目前官方支持:sql server, sqllite, memory(测试使用)

2.支持mongo:

因为odata的驱动程序库不支持官方不支持mongo数据库,所以使用非官方框架EntityFrameworkCore.MongoDb, github地址:https://github.com/crhairr/EntityFrameworkCore.MongoDb/wiki/Getting-Started。结果是运行直接报错,具体请查阅:https://github.com/crhairr/EntityFrameworkCore.MongoDb/issues/21。放弃!!!

3.Odata + mysql:在1的配置基础上,安装nuget包:MySql.Data.EntityFrameworkCore,在Startup.cs中添加对mysql数据库的支持:

opt.UseMySQL(@"server=localhost;port=3306;database=cnblogs;uid=root;pwd=123456;SslMode=None");

完美运行起来,漂亮!!!

4.注意事项:

odata for asp.net core 目前还处于beta版本,有各种bug的存在,具体请在github上查看问题:https://github.com/OData/WebApi/tree/feature/netcore

  • 发表于:
  • 原文链接http://kuaibao.qq.com/s/20180428G0UAPH00?refer=cp_1026
  • 腾讯「云+社区」是腾讯内容开放平台帐号(企鹅号)传播渠道之一,根据《腾讯内容开放平台服务协议》转载发布内容。

扫码关注云+社区

领取腾讯云代金券