在之前《在ASP.NET Core中使用Apworks快速開發(fā)數(shù)據(jù)服務(wù)》一文的評論部分,.NET大神張善友為我提了個建議,可以使用Compile As a Service的Roslyn為語法解析提供支持。在此非常感激友哥給我的建議,也讓我了解了一些Roslyn的知識。使用Roslyn的一個很大的好處是,框架無需依賴第三方的組件,并且Roslyn也是.NET Foundation的一個開源項(xiàng)目,為.NET語言提供編譯服務(wù),社區(qū)支持做的也非常出色。然而,經(jīng)過一段時間的思考,我還是選擇了一個折中的方案:在Apworks中使用Irony作為查詢語言的語法解析器,與此同時,為查詢語言語法解析提供可擴(kuò)展的框架級支持。
那么問題來了:為什么我需要在Apworks中設(shè)計查詢語言?Irony是什么?如何使用Irony實(shí)現(xiàn)自己的查詢語言語法解析器?下面我就一一為大家介紹。
Apworks中的查詢語言
很多體驗(yàn)過Apworks數(shù)據(jù)服務(wù)(Apworks Data Services)案例:
延伸閱讀
學(xué)習(xí)是年輕人改變自己的最好方式