使用DSL生成C#代码

前端之家收集整理的这篇文章主要介绍了使用DSL生成C#代码前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
目前我正在使用的项目没有完全固定的模型(由于外部影响),因此我希望能够灵活地编写它们.目前,它们跨应用程序的三个不同层(db,web api和客户端)进行复制,每个层都有类似的逻辑(即验证).

我想知道是否有一种方法可以让我编写一个模型文件(例如在ruby中),然后让它将该模型转换为必要的c#文件.目前看起来我只是编写了许多可能在任何阶段发生变化的样板代码,而这种生成方法可以让我专注于更重要的事情.

有没有人有这样的建议,一个dsl /语言我可以做到这一点,并且有没有人有这样的事情的经验?

解决方法

这可以通过 ANTLR轻松完成.如果输出足够相似,您可以简单地使用文本模板机制 – 否则它可以生成一个抽象语法树供您遍历.

猜你在找的C#相关文章