您当前的位置: 首页 >  visual studio

寒冰屋

暂无认证

  • 2浏览

    0关注

    2286博文

    0收益

  • 0浏览

    0点赞

    0打赏

    0留言

私信
关注
热门博文

生产力提升! 自己动手自定义Visual Studio 2019的 类创建模板,制作简易版Vsix安装包

寒冰屋 发布时间:2021-07-03 22:17:36 ,浏览量:2

目录

序言

1、visual studio 扩展

2、建立vs扩展项目

2、建立自己的项模板项目

3.配置vsix包

4. 安装

5、使用

6、体验很好

 

序言

最近一直在开发 webApi 接口,为了方便我采用了反Restful风格开发,90%的接口均采用post方式,小部分查询采用Get方式,接口的入参和出参定义每次都需要手动创建2个类,心不累手累,怎么能减轻点工作,提升编程体验,早点下班呢?

1、visual studio 扩展

大家应该都安装过 扩展吧,就是这个东东。

图片

是的,本次我们就开始一个自己的扩展开发。

别担心,这个扩展非常简单,不要担心会占用你太多时间。

2、建立vs扩展项目
  1. 新建一个项目,过滤最右边的项目类型为 扩展。

图片

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;


    /// 
    /// $safeitemname$接口输入参数
    /// 
    public class $safeitemname$Args 
    {

    }

    /// 
    /// $safeitemname$接口输出参数
    /// 
    public class $safeitemname$Result 
    {

    }
}

好了,一次建立,接口的入参和出参类都写好了, 我们只需要写内容即可。

双击 扩展名.vstemplate的文件,配置 菜单项名称,如下:

...
 
    WebApi参数类
    WebApiTemplate
    ...
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
{
   /// 
   /// RegisterUser接口输入参数
   /// 
   public class RegisterUserArgs
   {

   }

   /// 
   /// RegisterUser接口输出参数
   /// 
   public class RegisterUserResult
   {

   }
}
6、体验很好

自己定义的真香,我现在写代码更加爽了,只需要聚焦内容即可。 简单、一致,代码的可阅读性应该也提升了!

关注
打赏
1665926880
查看更多评论
立即登录/注册

微信扫码登录

0.1893s