如何创建自己的visual studio项目模板

KnifeZ 12/26/2020, 2:29:37 PM 50

当建的项目越来越多的时候,会发现新开一个项目是很繁琐的事情,引入常用的库,Setup、appsetting通用配置,日志处理,常用开发工具库,数据库帮助类等等,那么作为会偷懒的程序员,肯定有办法解决这种情况。

注:本文基于vs2019演示

Visual Studio 项目模板元素

通常会有这样一种场景,如建立数据库Model时,总是需要引入一些命名空间,有时也需要继承基础的类来简化主键,创建时间修改时间等字段的创建。如下

using System;
using System.Collections.Generic;
using System.Linq;
using System.Threading.Tasks;
using System.ComponentModel.DataAnnotations;
using System.Text.Json.Serialization;
using KnifeZ.Virgo.Core;

namespace WebDemo.Model
{
    public class MyModel : BasePoco
    {

    }
}

0
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15

当我新建一个数据库model时我希望创建好之后的代码长这样,而不希望一遍遍的引用命名空间、继承类,这个时候就需要vs的项目模板了。

在vs2019的菜单中依次点开 =》项目=》导出模板

然后选择项模板和项目,勾选想当模板的类文件,继续下一步,勾选想要引用的命名空间,然后下一步,填写模板名称、描述、图标等信息,最后点完成即可成功创建模板。然后重新打开vs,添加类即可发现刚刚创建的类模板。




Visual Studio 项目模板

项目模板与项模板的过程一致,单项目文件直接创建即可,如果是多项目,则需要先将每个项目导出,然后解压到同一目录下,如下图

然后在当前目录创建一个文件 MyTemplate.vstemplate,内容复制如下

VSTemplate Version="3.0.0" Type="ProjectGroup"
    xmlns="http://schemas.microsoft.com/developer/vstemplate/2005"
    TemplateData
        NameKnifeZ.Virgo Projects Template/Name
        DescriptionKnifeZ的.net5项目模板 Virgo/Description
        Iconpackage.png/Icon
        ProjectTypeCSharp/ProjectType
        LanguageTagCSharp/LanguageTag
        PlatformTagNET5/PlatformTag
        ProjectTypeTagWeb/ProjectTypeTag
    /TemplateData
    TemplateContent
        ProjectCollection
            ProjectTemplateLink ProjectName="$projectname$"
                WebDemo\MyTemplate.vstemplate
            /ProjectTemplateLink
            ProjectTemplateLink ProjectName="$projectname$.Model" CopyParameters="true"
                WebDemo.Model\MyTemplate.vstemplate
            /ProjectTemplateLink
            ProjectTemplateLink ProjectName="$projectname$.ViewModel" CopyParameters="true"
                WebDemo.ViewModel\MyTemplate.vstemplate
            /ProjectTemplateLink
        /ProjectCollection
    /TemplateContent
/VSTemplate
0
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24

$projectname$代表你创建时的项目名称,$ext_projectname$代指项目前缀,如在 WebDemo.DataAccess$projectname$为WebDemo.DataAccess,$ext_projectname$为WebDemo。

最后将这些文件压缩后放在我的文档\Visual Studio 2019\Templates\ProjectTemplates,重启vs2019后就可以正常选择自己创建的模板了。

如果觉得文章帮助了您,可以请我喝杯咖啡

#Tags

软件工具

发表评论

邮箱
昵称

热门文章

本站已稳定运行了1天 共计人访问
Powered by .NET 5 on ubuntu