古人说得好“工欲善其事必先利其器”,隔壁小黑也说“磨刀不误砍柴功”,在使用ABP框架时可以自定义代码模板来提高开发效率。
一个通用的ABP应用服务往往要涉及到多个类和接口才能完成,常用的有
在VS中选中已有代码文件,选择“项目>导出模板”弹出导出模板向导,勾选“项模板”并选择代码文件所在的项目。
点击“下一步”,勾选要导出的项。
点击“下一步”,勾选需要引用的类库。
点击“下一步”,可以为模板命名,并指定输出位置以及是否将模板自动导入VS。
之后在项目上右键选择“添加>新建项”,就可以从自定义的模板创建代码文件了。
VS2019的用户自定义模板默认位于C:\Users\Administrator\Documents\Visual Studio 2019\Templates\ItemTemplates路径下。
代码模板一般包含两个文件,一个是代码模板配置文件,后缀是.vstemplate,另一个是代码模板文件本身,后缀是.cs。
代码模板配置文件为XML格式,关键的属性有DefaultName、Name、Description、References和ProjectItem,其中ProjectItem的值就是指向代码模板文件本身。
编辑代码模板文件,可以添加自定义的头部注释,设置代码文件的默认结构。其中$safeitemrootname$为文件名,$rootnamespace$为命名空间,$username$为用户名(当前操作系统的登录名,不是VS的登录名),$time$为当前时间。
/*-----------------------------------------------
// Copyright (C) 2020 南京戎光软件科技有限公司 版权所有。
// 文件名称: $safeitemrootname$
// 功能描述: 应用服务类
// 创建标识: panshuai $time$
// 修改标识: panshuai $time$
// 修改描述:
-----------------------------------------------*/
using System;
using System.Collections.Generic;
using System.Text;
using System.Threading.Tasks;
using Abp.Domain.Repositories;
using Abp.AutoMapper;
using RunGo.Application;
namespace $rootnamespace$
{
/// <summary>
/// 应用服务类
/// </summary>
public class $safeitemname$:RunGoApplicationService<TEntity, TEntityDto, TPrimaryKey, TPagedInput, TCreateInput, TUpdateInput>,I$safeitemname$
{
//private readonly IRepository<Entity, string> _repository;
//public CodingAppService(IRepository<Entity,string> repository)
//{
// _repository = repository;
//}
}
其他过程类似,手动创建一系列模板,写代码再也不愁了。