我最近需要为 C# 编写一个流畅的接口,它本质上将镜像 SQL。是的,我知道 LINQ to SQL,但我对“更接近金属”很感兴趣——在C# 中拥有的东西基本上只提供了一个 Intellisensified SQL shim。
例如,
var fq = new FluentQuery();
Expression<Action> =
() => fq.SELECT.DISTINCT(Foo.ID).FROM(Foo).WHERE(Foo.Age > 22);
现在,我在想这个概念可以被推广——也就是说,一个通用的 EBNF 到流利的接口生成器怎么样?有谁知道这样的野兽是否存在?