There is a (often) overlooked feature available in visual studio which lets you quickly create new projects from a template. I often create small console applications with some basic functionality and sometimes it's tedious to go over some basic steps over and over.
Some axamples that you could create a template for:
- A console application with basic features such as a HttpClient or appsettings.json file.
- A default headless-CMS with entity-framework
- A more advanced default Angular application served with a .Net API
How to create a template
- Create a new project
- Modify the project
- Export as a template
Select 'Project Template' and press Next. Now enter a name and a description. I really suggest using an icon which represents what you have build. I will use a CMD icon I found on the internet.
Click finish
What did it create?
It's important to know what exactly was created by visual studio, so let's take a look at this exported zip file. First of all, the project is located in:
%USERPROFILE%\Documents\Visual Studio 2022\Templates\ProjectTemplates
You will find the newly created .zip file here
For completionists sake, the default visualstudio templates are located in:
C:\Program Files\Microsoft Visual Studio\2022\Professional\Common7\IDE\ProjectTemplates\CSharp
# The generated template #
Let's quickly dive into that .zip file shall we? One thing you can notice is the created `.vstemplate` file. It contains the summary and definition of the template you entered. If you have want to change the name/description/icon of the template you can do so here.
![Image description](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/svcq34r4nhvhyebfv2jr.png)
* Also note the `TemplateContent` fields. This contains a list with all items in your template. The `ReplaceParameters` tell the template that these files contain variable which need to be changed upon creating a new project.
Let's look at one of the `.cs` files, the `startup.cs`:
![bmp icon cmd](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/5w7r1v5chv2kuo23gvad.png)
First thing you will notice is obviously the namespace: `namespace $safeprojectname$ `. This is a variable that the template will replace when you create a new project based off of this template.
# How to use the template #
Open a new Visual Studio window and simply click on `File > New > Project..`. Your new template should be at the top!
![Image description](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/ylqezqtrx79xer5tdmph.png)
Select it and use it like you would use any of the microsoft default Projects!
Enjoy this time saving trick!
You can find the template code here: https://github.com/dotnetrule/Console-QuickStart
src: https://docs.microsoft.com/en-us/visualstudio/ide/how-to-create-project-templates?view=vs-2022
Top comments (0)