Blogs
📆 2025-12-19 00:45

代码模板

代码生成模板,是使用razor语法编写的文本模板文件,以.razor为后缀名。它们用于生成确定的代码内容,或为MCP工具提供参考。

查看模板文件

你可以通过Studio中的基础数据/模板页面来查看你的模板文件。

也可以在项目根目录中下的templates目录中查看模板文件,页面会读取该目录中的模板并展示。

模板管理

首先要添加模板分类(对应目录名称),然后在该分类中添加模板文件。

你可以通过UI页面添加,也可以直接在templates目录中添加。

Tip

通过UI添加模板时,会初步验证您的内容是否符合razor语法规范。

模板上下文和变量

模板上下文和变量是在编写模板时,可以使用的数据和变量,在创建生成任务时,可选择上下文类型和自定义变量列表。

上下文结构

属性 说明
命名空间 @Namespace
模型名称 @ModelName
类型描述 @Description
换行 @NewLine
实体属性 @PropertyInfos
变量列表 @Variables

对于数据类型为实体时,额外包含:

类型 变量
添加DTO @AddPropertyInfos
更新DTO @UpdatePropertyInfos
列表DTO @ItemPropertyInfos
详情DTO @DetailPropertyInfos
筛选DTO @FilterPropertyInfos

DTO的PropertyInfos结构与实体的PropertyInfos相同。

PropertyInfo结构

属性 说明
类型 Type
名称 Name
显示名称 DisplayName
是否数组 IsList
是否公开 IsPublic
是否导航属性 IsNavigation
是否枚举 IsEnum
xml注释 CommentXml
注释摘要 CommentSummary
是否必须 IsRequired
是否可空 IsNullable
最小长度 MinLength
最大长度 MaxLength

内置函数

方法 示例
ToHyphen str.ToHyphen()
ToSnakeLower str.ToSnakeLower()
ToPascalCase str.ToPascalCase()
ToCamelCase str.ToCamelCase()

路径变量

在定义生成步骤时,路径中可使用的变量:

属性 说明
模型名称(CamelPascal) ModelName
模型名称(a-b-c) ModelNameHyphen

模板示例

接下来我们来添加一个模板。

  1. 在菜单中找到基础数据/模板,点击目录右侧的 + 号,添加一个新的模板分类,命名为sample

  2. 点击右侧模板列表的 + 号,添加一个新的模板,名称为ModelDetail,内空如下:

    @foreach (var item in PropertyInfos)
    {
        <p>@item.Name</p>
    }
    

我们将在后续的代码生成任务中使用该模板。

模板本身遵循razor语法规范,你可以在项目目录下创建templates/sample/ModelDetail.razor文件,用VS Code等工具进行编辑,添加后,刷新列表即可看到该模板。

Tip

编写模板不是件容易的事情,你需要了解你可以使用哪些变量和数据结构,可借助MCP工具来生成,并在此基础上进行修改.