如何在C#上定义DSL

Dej*_*jan 2 c# dsl

对于一个小小的夜间项目,我想编写一个可以在.NET应用程序中使用的验证组件,以对对象,输入参数和后置条件进行常规和繁琐的验证.

我的第一个想法是将所有这些验证设置逻辑转储到XML配置文件中,并为想要在代码中拥有它的人提供一个液体界面.

因为我想提供实际可用的东西,我想提供一种专门的DSL(领域特定语言).问题是我应该使用什么工具来做这件事?

我想过用正则表达式手工解析它.但我个人希望有更多可用的东西.

那么你会建议什么?

48k*_*ocs 5

听起来你正在谈论实现.Net 4.0的一个功能,代码合同.

所以我猜我推荐的工具是VS.Net 2010.