在之前《在ASP.NET Core中使用Apworks快速開(kāi)發(fā)數(shù)據(jù)服務(wù)》一文的評(píng)論部分,.NET大神張善友為我提了個(gè)建議,可以使用Compile As a Service的Roslyn為語(yǔ)法解析提供支持。在此非常感激友哥給我的建議,也讓我了解了一些Roslyn的知識(shí)。使用Roslyn的一個(gè)很大的好處是,框架無(wú)需依賴第三方的組件,并且Roslyn也是.NET Foundation的一個(gè)開(kāi)源項(xiàng)目,為.NET語(yǔ)言提供編譯服務(wù),社區(qū)支持做的也非常出色。然而,經(jīng)過(guò)一段時(shí)間的思考,我還是選擇了一個(gè)折中的方案:在Apworks中使用Irony作為查詢語(yǔ)言的語(yǔ)法解析器,與此同時(shí),為查詢語(yǔ)言語(yǔ)法解析提供可擴(kuò)展的框架級(jí)支持。

那么問(wèn)題來(lái)了:為什么我需要在Apworks中設(shè)計(jì)查詢語(yǔ)言?Irony是什么?如何使用Irony實(shí)現(xiàn)自己的查詢語(yǔ)言語(yǔ)法解析器?下面我就一一為大家介紹。

Apworks中的查詢語(yǔ)言

很多體驗(yàn)過(guò)Apworks數(shù)據(jù)服務(wù)(Apworks Data Services)案例:

網(wǎng)友評(píng)論