JetBrains Rider 2025.2 Help

模板宏

当您 应用代码模板时,JetBrains Rider 会用一些值初始化 模板参数。 为了计算这些值,它使用 模板宏 ,这些宏可以根据周围的上下文检索许多有用的数据,例如当前文件名、当前解决方案名称、包含的命名空间、剪贴板内容等。 此外,宏还可以调用 代码补全操作 ,猜测并建议类型、变量、标签等。

一旦您 声明一个新的模板参数 ,该参数就会出现在 编辑变量 对话框中,您还可以为该参数选择一个宏。 在创建 源模板时,宏是通过 [宏] 属性指定的。

某些宏仅为您提供必要的项目。 例如, 当前解决方案名称建议标签名称。 其他宏有其自己的参数,您需要指定这些参数。 例如,如果您为模板参数选择 建议 类型的变量宏,您需要为相应的宏参数提供一个类型。

如果您未为模板参数定义任何宏,则在应用模板时会插入参数名称。 如果参数 可编辑 ,系统会建议用户编辑此名称。

掌握模板宏用法的最佳方式是研究 JetBrains Rider 的 预定义模板的丰富集合。

模板宏列表

下表列出了 .NET 特定模板中可用于变量的所有宏。

表达式 列列出了可以在 源代码模板 中使用的宏表达式,例如 [Macro(Target = "myVariable", Expression = "suggestVariableName()")]

描述 列按其在 选择宏 对话框中的显示方式列出宏,适用于您创建或编辑 在用户界面中的模板变量 时。

表达式

描述

详细信息

asmDefNameMacro()

没有空格字符的当前文件名

评估没有空白字符的当前文件名

    unityParentTypeName()

    当前父 Unity 类型名称

    当前父 Unity 类型名称

      bakerNameBasedOnUnityParentTypeName()

      基于父 Unity 类型名称生成 Baker 名称

      基于父 Unity 类型名称生成 Baker 名称

        nameOfEntity()

        实体的名称

        如果可能,求值结果为 'nameof(entity)',否则求值结果为 'entity'

          dependencyPropertyType()

          DependencyProperty 类型

          求值结果为当前框架特定的依赖项属性类型

            guessElementType()

            猜测 变量表示的集合的元素类型

            分析代码并猜测集合元素的类型。

            宏参数:

            • 变量 - 模板中对另一个参数的引用

            suggestIndexVariable()

            建议索引变量的名称

            在求值点建议索引变量的唯一名称

              getAlphaNumericFileNameWithoutExtension()

              不带扩展名的当前文件名,所有非字母数字字符被替换为下划线

              求值结果为不带扩展名的当前文件名,所有非字母数字字符被替换为下划线

                getAlphaNumericMainFileNameWithoutExtension()

                不带扩展名的主文件名称,所有非字母数字字符被替换为下划线

                求值结果为不带扩展名的主文件名称,所有非字母数字字符被替换为下划线

                  arrayVariable()

                  建议数组变量

                  建议类型为数组类型的变量

                    fixedTypeName()

                    插入对 类型的引用

                    求值结果为所选类型名称

                    宏参数:

                    • 类型 - 类型

                    capitalize()

                    另一个变量的值首字母大写

                    将字符串值变为大写(即,将首字母改为大写)

                    宏参数:

                    • 另一个变量 - 模板中对另一个参数的引用

                    剪贴板

                    剪贴板内容

                    求值结果为当前文本剪贴板内容

                      完成

                      执行基本补全

                      在对变量求值的位置显示基本代码补全列表

                        智能完成

                        执行智能补全

                        在对变量求值的位置显示智能代码补全列表

                          completeType()

                          执行类型补全

                          在对变量求值的位置显示类型补全列表

                            常量()

                            常量值

                            求值结果为指定常量值

                            宏参数:

                            • 常量值 - 文本字符串

                            typeMember()

                            包含类型成员名称

                            求值结果为最内层包含类型成员(例如,方法或属性)的短名称

                              typeName()

                              包含类型名称

                              求值结果为最内层包含类型的短名称

                                typeRef()

                                包含类型引用

                                求值结果为最内层包含类型的引用

                                  上下文()

                                  描述当前上下文的条目列表

                                  提供描述当前上下文的项目列表。 包括文件名、包含的类型名称、命名空间名称等。

                                    getCreationTime()

                                    文件创建时的日期和时间,格式为指定的 格式

                                    求值结果为当前文件的文件创建日期和时间

                                    宏参数:

                                    • 格式 - 文本字符串

                                    getCurrentDate()

                                    指定 格式的当前日期

                                    求值结果为当前日期

                                    宏参数:

                                    • 格式 - 文本字符串

                                    getCurrentTime()

                                    指定 格式的当前日期和时间

                                    求值结果为当前日期和时间

                                    宏参数:

                                    • 格式 - 文本字符串

                                    getCurrentNamespace()

                                    包含命名空间

                                    求值结果为包含命名空间的名称

                                      decapitalize()

                                      另一个变量的值首字母小写

                                      将字符串值变为小写(即,将首字母改为小写)

                                      宏参数:

                                      • 另一个变量 - 模板中对另一个参数的引用

                                      getDefaultNamespace()

                                      默认命名空间

                                      求值结果为当前项目的默认命名空间

                                        fileDefaultNamespace()

                                        当前文件的默认命名空间

                                        求值结果为当前文件的默认命名空间

                                          getFileName()

                                          当前文件名

                                          求值结果为当前文件名

                                            getFileNameWithoutExtension()

                                            不带扩展名的当前文件名

                                            求值结果为不带扩展名的当前文件名

                                              getFullUserName()

                                              当前用户的完整用户名

                                              求值结果为当前用户的完整名称

                                                guessExpectedElementType()

                                                猜测预期集合类型的元素类型

                                                如果此时需要集合类型,则猜测元素类型

                                                  guessExpectedType()

                                                  猜测此时预期的类型

                                                  猜测此时预期的类型

                                                    guid()

                                                    新建 GUID

                                                    生成新的全局唯一标识符(GUID)

                                                      行号

                                                      当前行编号

                                                      求值结果为对宏进行求值的行的编号

                                                        列出()

                                                        逗号分隔的值列表

                                                        在补全列表中显示指定的值列表

                                                        宏参数:

                                                        • 逗号分隔的值列表 - 文本字符串

                                                        要将逗号(, )作为列表中的值,请使用反斜杠(\ )进行转义。

                                                        getOutputName()

                                                        当前项目输出程序集名称

                                                        求值结果为当前项目的输出程序集名称

                                                          parameterOfType()

                                                          建议 类型的参数

                                                          建议指定类型的形参

                                                          宏参数:

                                                          • 类型 - 类型

                                                          getProjectName()

                                                          当前项目的名称

                                                          求值结果为当前项目的名称

                                                            getSolutionName()

                                                            当前解决方案名称

                                                            求值结果为当前解决方案名称

                                                              spacestounderstrokes()

                                                              另一个变量的值中的空格替换为“_”

                                                              将空格更改为下划线(即,'do something useful' 变为 'do_something_useful')

                                                              宏参数:

                                                              • 另一个变量 - 模板中对另一个参数的引用

                                                              enumerableVariable()

                                                              建议可枚举变量

                                                              建议可以枚举(即,在 foreach 循环中用作集合)的可见变量

                                                                suggestVariableName()

                                                                建议变量的名称

                                                                在变量声明(变量名称应位于此处)中执行时,建议变量的名称

                                                                  variableOfType()

                                                                  建议 类型的变量

                                                                  建议指定类型的变量

                                                                  宏参数:

                                                                  • 类型 - 类型

                                                                  suggestVariableType()

                                                                  建议新变量的类型

                                                                  建议在模板中声明的新变量的类型

                                                                    getUpperCaseAlphaNumericFileName()

                                                                    大写形式的当前文件名,所有非字母数字字符被替换为下划线

                                                                    求值结果为大写形式的当前文件名,所有非字母数字字符被替换为下划线

                                                                      getUserName()

                                                                      当前用户的短名称

                                                                      求值结果为当前用户名

                                                                        fullTagName()

                                                                        完整标记名称

                                                                        插入包含标记的全名

                                                                          suggestXmlAttributeNameByTag()

                                                                          按标记建议 XML 特性名称

                                                                          建议当前文档相同标记中使用的 XML 特性名称

                                                                            suggestAttributeName()

                                                                            建议 XML 特性名称

                                                                            建议当前文档中使用的 XML 特性名称

                                                                              suggestXmlTagName()

                                                                              建议 XML 标记名称

                                                                              建议当前文档中使用的 XML 标记名称

                                                                                tagName()

                                                                                标签名称

                                                                                插入不带命名空间的包含标记的名称

                                                                                  tagNamespace()

                                                                                  标记命名空间

                                                                                  插入包含标记的命名空间

                                                                                    castToLeftSideType()

                                                                                    转换为所需类型(如果需要转换)

                                                                                    插入(如果需要)到应位于赋值表达式左侧的类型的转换

                                                                                      fileheader()

                                                                                      文件头

                                                                                      插入设置中指定的文件头

                                                                                        TestSubject()

                                                                                        测试主体

                                                                                        插入为其生成测试的类的类型

                                                                                          suggestAttributeNameByTag()

                                                                                          按标记建议特性名称

                                                                                          建议当前文档相同标记中使用的特性名称

                                                                                            suggestAttributeValue()

                                                                                            建议特性值

                                                                                            为当前 HTML 标记特性建议特性值

                                                                                              suggestTagName()

                                                                                              建议标记名称

                                                                                              建议当前文档中使用的标记名称

                                                                                                AspMasterpageContentGenerator()

                                                                                                ASP.NET Masterpage 内容生成器

                                                                                                在对变量求值时为母版页内容占位符生成内容

                                                                                                  AspMvcAction()

                                                                                                  ASP.NET MVC 操作

                                                                                                  在对变量求值时显示包含可用 ASP.NET MVC 操作的补全列表

                                                                                                    AspMvcController()

                                                                                                    ASP.NET MVC 控制器

                                                                                                    在对变量求值时显示包含可用 ASP.NET MVC 控制器的补全列表

                                                                                                      runAtServer()

                                                                                                      如果选择了服务器端标记,则插入 runat="server"

                                                                                                      如果选择了服务器端标记,则插入 runat="server"

                                                                                                        unrealLogCategory()

                                                                                                        Unreal 日志类别

                                                                                                        评估为日志类别列表

                                                                                                          unrealLogVerbosity()

                                                                                                          Unreal 日志详细程度

                                                                                                          评估为日志详细程度列表

                                                                                                            substituteUnrealMacro()

                                                                                                            替换 Unreal 模板宏

                                                                                                            替换 Unreal 模板宏

                                                                                                              constTypeName()

                                                                                                              带有 const 的包含类型名称

                                                                                                              求值结果为带 const 说明符的最内层包含类型的短名称

                                                                                                                cppFunctionParameterList()

                                                                                                                包含函数形参列表

                                                                                                                求值结果为包含函数的形参名称的逗号分隔列表

                                                                                                                  cppFunctionParameter()

                                                                                                                  文档: 带名称的函数形参类型

                                                                                                                  为每个函数形参复制包含模板行,求值结果为具有名称的形参类型

                                                                                                                    cppFunctionParameterName()

                                                                                                                    文档: 函数形参名称

                                                                                                                    为每个函数形参复制包含模板行,求值结果为形参名称

                                                                                                                      cppFunctionParameterType()

                                                                                                                      文档: 函数形参类型

                                                                                                                      为每个函数形参复制包含模板行,求值结果为形参类型

                                                                                                                        cppFunctionReturnValue()

                                                                                                                        文档:函数返回值

                                                                                                                        仅当函数返回值类型为非 void 时才保留包含模板行

                                                                                                                          cppTemplateParameterName()

                                                                                                                          文档: 模板形参名称

                                                                                                                          为每个模板形参复制包含模板行,求值结果为模板形参名称

                                                                                                                            cppMacroParameterName()

                                                                                                                            文档: 宏形参名称

                                                                                                                            为每个宏形参复制包含模板行,求值结果为宏形参名称

                                                                                                                              cppFunctionReturnType()

                                                                                                                              文档: 函数返回值类型

                                                                                                                              求值结果为函数返回值类型

                                                                                                                                cppEntityShortName()

                                                                                                                                文档: 实体短名称

                                                                                                                                求值结果为正在记录的实体的短名称

                                                                                                                                  cppEntityQualifiedName()

                                                                                                                                  文档: 实体限定名称

                                                                                                                                  求值结果为正在记录的实体的限定名称

                                                                                                                                    cppEnumToStringEnumerator()

                                                                                                                                    枚举到字符串: 枚举器名称

                                                                                                                                    为每个枚举器复制包含模板行,求值结果为枚举器名称

                                                                                                                                      cppEnumToStringEnumeratorName()

                                                                                                                                      枚举到字符串: 枚举器名称作为字符串

                                                                                                                                      为每个枚举器复制包含模板行,求值结果为具有枚举器名称的字符串

                                                                                                                                        cppEnumToStringEnum()

                                                                                                                                        枚举到字符串: 枚举名称

                                                                                                                                        调用操作的枚举的名称

                                                                                                                                          cppExpandableTemplateNewline()

                                                                                                                                          文档和枚举到字符串模板中的换行符

                                                                                                                                          求值结果为文档和枚举到字符串模板中的换行符

                                                                                                                                            cppFileheader()

                                                                                                                                            文件头(C++)

                                                                                                                                            插入设置中指定的文件头

                                                                                                                                              cppPchIncludeDirective()

                                                                                                                                              预编译头文件 include 指令

                                                                                                                                              如果项目不使用预编译头,则求值结果为预编译头文件的 include 指令或空字符串

                                                                                                                                                最后修改日期: 2025年 9月 26日