序言
最近一直在开发 webApi 接口,为了方便我采用了反Restful风格开发,90%的接口均采用post方式,小部分查询采用Get方式,接口的入参和出参定义每次都需要手动创建2个类,心不累手累,怎么能减轻点工作,提升编程体验,早点下班呢?
1、visual studio 扩展
大家应该都安装过 扩展吧,就是这个东东。
是的,本次我们就开始一个自己的扩展开发。
别担心,这个扩展非常简单,不要担心会占用你太多时间。
2、建立vs扩展项目
新建一个项目,过滤最右边的项目类型为 扩展。
2. 使用c#开发,就选第一个。
3. 好了,不用写代码哦,回头我们再配置,继续
2、建立自己的项模板项目
新建一个项目,选择 c# Item Template,见下图。
点击class.cs,增加如下代码,里面有定义好的宏,所见即可知。
/*----------------------------------------------------------------Copyright (C) 2021 webmote 版权所有创建者:$username$创建时间:$time$文件:$itemname$.cs功能描述:----------------------------------------------------------------*/
namespace $rootnamespace$
{
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;/// <summary>/// $safeitemname$接口输入参数/// </summary>public class $safeitemname$Args {}/// <summary>/// $safeitemname$接口输出参数/// </summary>public class $safeitemname$Result {}
}
好了,一次建立,接口的入参和出参类都写好了, 我们只需要写内容即可。
双击 扩展名.vstemplate的文件,配置 菜单项名称,如下:
...<TemplateData><Name>WebApi参数类</Name><Description>WebApiTemplate</Description>...
3.配置vsix包
回到第一个项目,我们引用Item template项目,然后找到文件为“source.extension.vsixmanifest”的文件,按下图配置即可。
vsix内的资产就是我们的模板项目,增加到里面。
OK,build,发包。
4. 安装
在bin目录找到 “VSIXProject1.vsix” 安装。
安装的时候需要退出 vs2019.
5、使用
我们在DTO目录建立接口 RegisterUser的入参和出参,只需要找到我们自定义名字。
建立效果如下:
/*----------------------------------------------------------------
Copyright (C) 2021 webmote 版权所有创建者:admin
创建时间:2021/4/7 16:45:11
文件:RegisterUser.cs
功能描述:----------------------------------------------------------------*/
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;namespace Service.DTO.User
{/// <summary>/// RegisterUser接口输入参数/// </summary>public class RegisterUserArgs{}/// <summary>/// RegisterUser接口输出参数/// </summary>public class RegisterUserResult{}
}
6、体验很好
自己定义的真香,我现在写代码更加爽了,只需要聚焦内容即可。
简单、一致,代码的可阅读性应该也提升了!