.NET Core开发日志——OData
簡述
OData,即Open Data Protocol,是由微軟在2007年推出的一款開放協議,旨在通過簡單、標準的方式創建和使用查詢式及交互式RESTful API。
類庫
在.NET Core中想要使用OData功能的話需要添加Microsoft.AspNetCore.OData包。
dotnet add package Microsoft.AspNetCore.OData準備模型類
創建Edm模型
OData使用EDM,即Entity Data Model來描述數據的結構。在Startup文件中添加創建方法。
注冊OData服務
在Startup文件的ConfigureServices方法里注冊OData服務。
這里要注意的是在.NET Core 2.2里,默認已經有終結點,所以要使用OData的終結點的話需要將默認選項禁用掉。
注冊OData終結點
同樣在Startup文件里,在其Configure方法內將原來的注冊路由內容改為注冊OData的終結點。
顯示元數據
運行程序后訪問https://localhost:5001/odata/$metadata地址,可以看到所有可用模型的元數據。
創建Controller
本文實例中不考慮數據庫的操作,故而使用hard code方式構建必要的模型對象。
EnableQuery特性在需要高級查詢的場景時必須添加。
查詢
加入Controller之后,訪問https://localhost:5001/odata/Books地址,可得到所有Book數據。
訪問https://localhost:5001/odata/Books(1)地址,可得到key值為1的Book數據。
高級查詢
如果想要使用OData查詢的高級功能,可以在注冊終結點時額外加上相應的配置。
如果想要按特定條件過濾數據內容的話也很容易:
https://localhost:5001/odata/Books?$filter=Price%20le%2060
總結
不難看出,OData的真正魅力在于其對那些高級查詢功能的支持,所以在創建RESTful API時,不妨考慮使用OData,這樣應該能減少許多不必要的代碼工作。
原文地址:https://www.cnblogs.com/kenwoo/p/10360260.html
.NET社區新聞,深度好文,歡迎訪問公眾號文章匯總 http://www.csharpkit.com
總結
以上是生活随笔為你收集整理的.NET Core开发日志——OData的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 所有人都可以是开发人员——《Office
- 下一篇: ML.NET 0.10特性简介