创建文件模板官方文档:https://www.jetbrains.com/zh-cn/help/rider/2025.2/Creating_a_File_Template.html
  1. 使用文件模板,就可以不必再写重复代码,也可以跳过一些注释写入,比如创建人 + 创建时间
  2. 功能就像使用 Vistual Studio 创建的代码模板一样,需要使用 Virtual Studio 设置代码模板请看:https://www.achmydream.com/archives/72.html

使用模板01.png
使用模板02.png
使用模板03.png

设置

设置 → 文件模板 → C#

  1. 可以从右边的复制,复制现有配置,可减少配置时间
  2. 默认文件名,就是实际的生成的默认文件名
  3. 组,可以选择将相同模板放到一起,方便使用时查找

设置模板01.png

具体设置说明

  1. 左侧填写代码模板

    /*
     * @author: $AUTHOR$ $DATE$
     */
    
    namespace $NAMESPACE$
    {
      /// <summary>
      /// 
      /// </summary>
      public class $CLASS$ {$END$}
    }
  2. 右侧设置文件名称,组名称,并点击编辑变量

    设置模板02.png

  3. 编辑变量说明

    1. $NAMESPACE$$$ 包围的变量,可以是自定义变量,也可以使用Rider 内置的变量,这里是用来设置命名空间,点击更改宏

      命名空间01.png
      命名空间02.png

  1. $CLASS$ 类名,点击更改宏

    类名01.png
    类名02.png

  2. $AUTHOR$ 作者,点击更改宏,然后输入作者姓名

    作者01.png

    作者02.png

    作者03.png

  3. $DATE 日期,点击更改宏,然后设置日期类型

    日期01.png

    日期02.png

    日期03.png

  1. 其他模板展示,编辑变量与上面相同,也可以自定义变量

    /*
     * @author: $AUTHOR$ $DATE$
     */
    
    namespace $NAMESPACE$
    {
      /// <summary>
      /// 
      /// </summary>
      public class $CLASS$ 
      {
        /// <summary>
            /// command 
            /// </summary>
            public sealed class Command : ICommand<long>
            {
                ///// <summary>
                ///// 操作对象ids
                ///// </summary>
                //[JsonPropertyName("account_ids")]
                //public List<long> AccountIds { get; set; } = null!;
    
            }
    
            /// <summary>
            /// command handler.
            /// </summary>
            public sealed class Handler : CommandHandler<Command, long>
            {
                //private readonly IEFRepository<A> repository;
                //private readonly DbContext _dbContext;
    
                ///<inheritdoc/>
                public Handler()
                {
                    //初始化
                }
    
                /// <inheritdoc />
                public override async Task<Result<long>> Handle(Command command, CancellationToken cancellationToken)
                {
                    throw new Exception("补充业务代码");
                }
            }
      }
    }