如何:创建域特定语言解决方案
通过使用专用 Visual Studio 解决方案,创建域特定语言 (DSL)。
必备组件
在启动此过程之前,必须先安装以下组件:
Visual Studio |
|
Visual Studio SDK |
|
Visual Studio 可视化和建模 SDK |
创建一个域特定语言解决方案
若要创建域特定的语言解决方案
启动 DSL 向导。
在**“文件”菜单上指向“新建”,再单击“项目”**。
此时将出现**“新建项目”**对话框。
在**“项目类型”窗格中下,展开“其他项目类型”节点,然后单击“扩展性”**。
单击**“域特定语言设计器”**。
在**“名称”框中,键入解决方案名称。 单击“确定”**。
**“域特定语言设计器向导”**显示。
备注
您输入的名称最好是一个有效的 Visual C# 标识符,因为它可能被用于生成代码。
选择域特定语言(DSL)模板。
在**“选择域特定语言选项”页上,选择一个解决方案模板例如“最小的语言”**。 选择与要创建的 DSL 类似的模板。
有关这些解决方案模板的更多信息,请参见选择域特定语言解决方案模板。
在**“文件扩展名”页输入一个文件扩展名。 它应该是在您的计算机,以及在您要安装 DSL 的所有计算机上是唯一的。 您应该会看到该消息“应用程序或 Visual Studio 编辑器不使用此扩展”**。
如果使用了以前的、未完全安装的实验 DSL 使用的文件扩展名,您可以使用在 Visual Studio SDK 菜单中的 “重置试验实例” 工具来清除它们。
如果其它使用此文件扩展名的 Visual Studio 扩展在您的计算机上都已完全安装,请考虑将其卸载。 在**“工具”菜单上,单击“扩展管理器”**。
检查并根据需要调整在向导的其余页的字段。 当您对设置满意后,请单击**“完成”**。 有关设置的更多信息,请参见 DSL 设计器向导页。
向导创建具有两个项目的解决方案,这两个项目名分别为 DSL 和 DslPackage。
备注
如果看到消息预警您不要运行来自于不受信任源的文本模板,单击 “确定”。可以将此消息设置为不再出现。
DSL 设计器向导页
您可以从其默认值中省去几种未更改的字段。 但是,请确保你设置了文件扩展名字段。
解决方案设置页
“想要将哪个模板作为您的域特定语言的依据?”
选择与要创建的 DSL 类似的模板。 不同的模板提供方便的起始点。 选择解决方案模板时,向导将显示说明。 有关这些解决方案模板的更多信息,请参见选择域特定语言解决方案模板。要如何命名您的域特定语言?
默认为该解决方案名称。 编码由此值生成。 作为 C# 类名,它必须是有效的。
文件扩展页
模型文件应使用哪些扩展名?
键入新的文件扩展名。验证此文件扩展名尚未注册使用此计算机,如下:
在**“注册的处理此扩展的其他工具和应用程序”**下查找。 如果看到消息 “应用程序或 Visual Studio 编辑器不使用此扩展”,则可以使用此文件扩展名。
如果看到工具或包列表,应执行以下操作之一:
键入不同的文件扩展名。
- 或 -
重置 Visual Studio 中的实验实例。 这将注销以前生成的所有 DSL。 在**“启动”菜单上,依次单击“所有程序”、“Microsoft Visual Studio 2010 SDK”、“工具”,然后单击“重置 Microsoft Visual Studio 2010 实验实例”**。 您可以重新生成要再次使用的其他 DSL。
- 或 -
如果使用此文件扩展名的 Visual Studio 扩展在您的计算机上都已完全安装,请将其卸载。 在**“工具”菜单上,单击“扩展管理器”**。
产品设置页
新的域特定语言所属产品名称是什么?
默认为该 DSL 名。此值用于Windows资源管理器(或文件Explorer)描述该文件扩展名的文件。
产品所属公司名称是什么?
公司名称。此值合并到的 DSL 包中的 AssemblyInfo 属性。
在此解决方案中,如何为项目的根命名空间?
此默认为由您的公司名称和产品名称组成的名称。
“签名”页
“创建一个强名称密钥文件”
默认选项创建新的关键字以对您的DSL程序集进行签名。“请使用现有的强名称密钥文件”
如果您想要集成你的 DSL 和另一个程序集,请使用该选项。
有关更多信息,请参见 Creating and Using Strong-Named Assemblies。