Default Project Templates in Visual Studio

You can create new projects from templates installed locally or templates available online. Selecting a category within the Installed or Online sections populates a list of project templates. The list of available project templates varies depending on the .NET Framework version you target. Select a project template to see a brief description about the template.

All project templates add the necessary files and references for the project type.

For information about creating custom templates, see Creating Visual Studio Templates.

For more information about locating and organizing custom templates, see How to: Locate and Organize Project and Item Templates.

Templates by Category

The following tables list the default types of projects available in Visual Studio by category. Subcategories are indicated here in the format <Subcategory>/<TemplateName> where not otherwise specified. Some of the templates from various subcategories will also appear when the parent category is selected.

Note

Available templates may vary according to Visual Studio version, edition, installation options, version of the .NET Framework, and other customizations. If you are missing a template that comes with your installation, run devenv.exe with the /installvstemplates switch. For more information, see Devenv Command Line Switches.

Templates for Windows Store Apps

The following templates appear under the Language**/Windows Store** subcategory.

Project Template

More Information

For Visual Basic or Visual C#:

For more information about any template in this subcategory, see Templates to speed up your app development.

Blank App (XAML)

A single-page project for a Windows Store app that has no predefined controls or layout.

Grid App (XAML)

A three-page project for a Windows Store app that navigates among grouped items arranged in a grid. Dedicated pages display group and item details.

Split App (XAML)

A two-page project for a Windows Store app that navigates among grouped items. The first page allows group selection while the second displays an item list alongside details for the selected item.

Class Library (Windows Store apps)

A project that creates a managed class library that can be used by Windows Store apps or Windows Runtime components.

Unit Test Library (Windows Store apps)

A project that contains unit tests that can be used to test Windows Store apps, Windows Runtime components, or class libraries for Windows Store apps.

For Visual C++:

For more information about any template in this subcategory except the Direct 2D App and Direct 3D App templates, see Templates to speed up your app development. For information about the Direct 2D App and Direct 3D App templates, see Prepare your development environment for Windows Store DirectX apps.

Blank App (XAML)

A single-page project for a Windows Store app that has no predefined controls or layout.

Grid App (XAML)

A three-page project for a Windows Store app that navigates among grouped items arranged in a grid. Dedicated pages display group and item details.

Split App (XAML)

A two-page project for a Windows Store app that navigates among grouped items. The first page allows group selection while the second displays an item list alongside details for the selected item.

DLL (Windows Store apps)

A project for a native dynamic-link library (DLL) that can be used by a Windows Windows Store app or Windows Runtime component.

Static Library (Windows Store apps)

A project for a native static library (LIB) that can be used by a Windows Store app or Windows Runtime component.

Unit Test Library (Windows Store apps)

A project that contains unit tests that can be used to test Windows Store apps, Windows Runtime components, or class libraries for Windows Store apps.

Windows Runtime Component

A project for a Windows Runtime component that can be used by Windows Store apps, regardless of the programming languages in which the apps are written.

Direct2D App (XAML)

A project for a Windows Store app that uses Direct2D.

Direct3D App

A project for a Windows Store app that uses Direct3D.

For JavaScript:

For more information about any template in this subcategory, see JavaScript project templates for Windows Store apps.

Blank App

A single-page project for a Windows Store app that has no predefined controls or layout.

Grid App

A three-page project for a Windows Store app that navigates among grouped items arranged in a grid. Dedicated pages display group and item details.

Split App

A two-page project for a Windows Store app that navigates among grouped items. The first page allows group selection while the second displays an item list alongside details for the selected item.

Fixed Layout App

A project for a Windows Store app that scales using a fixed aspect ratio layout.

Navigation App

A project for a Windows Store app that has predefined controls for navigation.

Visual Basic and C# Windows Templates

The following templates appear under the Visual Basic/Windows or Visual C#/Windows subcategories.

Project Template

More Information

Class Library

Use the Class Library template to quickly create reusable classes and components that can be shared with other projects. For more information about creating component classes, see Component Classes.

Console Application

Console applications are typically designed without a graphical user interface (GUI) and are compiled into an executable file. You interact with a console application by typing instructions at the command prompt.

Empty Project

The Empty Project template can be used when you want to create your own project type. The template creates the necessary file structure needed to store application information. Any references, files, or components must be added manually. For more information on adding references, see Adding and Removing References.

Portable Class Library

Creates a project for authoring a .dll file that will run on Windows, Silverlight, Windows Phone, and Xbox 360.

Windows Forms Application

This creates a traditional standalone Windows application or a rich front-end to a distributed Web application. For more information, see Creating Windows Applications or Creating a Windows Application Project.

Windows Forms Control Library

The Windows Control Library project template is used to create custom controls to use on Windows Forms. For more information, see Windows Forms Controls.

Windows Service

Windows Service Applications (formerly called "NT services") are long running applications that do not have a user interface. They can monitor items such as system performance. For more information, see Introduction to Windows Service Applications.

WPF Application

The WPF Application template creates a project that uses Windows Presentation Foundation. For more information, see How to: Create a New WPF Application Project.

WPF User Control Library

Creates a WPF User Control, which builds on the functionality of existing WPF controls. For more information, see How to: Create a WPF UserControl Library Project.

WPF Browser Application

Creates a WPF application that runs in the browser. This application model is named XAML Browser Application (XBAP). For more information, see How to: Create a New WPF Browser Application Project or WPF XAML Browser Applications Overview.

WPF Custom Control Library

Creates a project in which to build a custom WPF control. For more information, see Control Authoring Overview.

Visual Basic and C# Web Templates

The following templates appear under the Visual Basic/Web or Visual C#/Web subcategories.

Note

These templates are only for Web application projects. They do not apply to Web site projects. For information about the difference between these types of Web projects, see Web Application Projects versus Web Site Projects in Visual Studio.

Project Template

More Information

ASP.NET Web Application

Creates a new Web application that includes the following:

  • Folders to contain membership pages, client script files, and cascading style sheet files.

  • A data folder, which is granted permissions that will enable ASP.NET to read and write to it at run time.

  • A master page file.

  • Web pages called Default.aspx and About.aspx.

  • A global application class file.

  • A Web.config file.

If you are creating a local IIS Web application or a remote IIS site, Visual Studio creates the IIS Web application.

ASP.NET Empty Web Application

Creates a new ASP.NET web application that includes a Web.config file but no other files.

ASP.NET Dynamic Data Entities Web Application

Creates a Dynamic Data Web application for use with ADO.NET Entity Framework. This Web application can target any relational database. For more information about Dynamic Data, see ASP.NET Dynamic Data.

ASP.NET Dynamic Data Linq to SQL Web Application

Creates a Dynamic Data Web application for use with Linq to SQL. This Web application can target any relational database. For more information about Dynamic Data, see ASP.NET Dynamic Data.

ASP.NET Server Control

Creates a server control to be used in ASP.NET web applications. For more information, see Walkthrough: Developing and Using a Custom Web Server Control.

ASP.NET AJAX Server Control

ASP.NET AJAX server controls consist of server and client code that integrate to produce rich client behavior. For more information, see Microsoft Ajax Overview.

ASP.NET AJAX Server Control Extender

ASP.NET AJAX extender controls enhance the client capabilities of standard ASP.NET Web server controls. For more information, see Microsoft Ajax Extender Controls Overview.

Visual Basic and C# Office Templates

The following Office project templates appear under the Visual Basic/Office or Visual C#/Office subcategories.

  • Excel 2010 Add-in

  • Excel 2010 Template

  • Excel 2010 Workbook

  • InfoPath 2010 Add-in

  • Outlook 2010 Add-in

  • PowerPoint 2010 Add-in

  • Project 2010 Add-in

  • Visio 2010 Add-in

  • Word 2010 Add-in

  • Word 2010 Document

  • Word 2010 Template

For more information about developing Office solutions, see Office Project Templates Overview and Getting Started Programming Application-Level Add-Ins.

Visual Basic and C# SharePoint Templates

The following templates appear under the Visual Basic/SharePoint or Visual C#/SharePoint subcategories.

  • SharePoint 2010 Project

  • SharePoint 2010 Visual Web Part

  • Import Reusable SharePoint 2010 Workflow

  • Import SharePoint 2010 Solution Package

  • SharePoint 2010 Silverlight Web Part

For more information, see SharePoint Project and Project Item Templates.

Visual Basic and C# Workflow Templates

The following templates appear under the Visual Basic/Workflow or Visual C#/Workflow subcategories.

All of the templates in this section create projects that use Windows Workflow Foundation. Windows Workflow Foundation enables model-driven workflow development, providing natural design visibility and hiding system-level concerns such as transactions, state management, and concurrency control.

For more information, see Windows Workflow Foundation Overview.

Project Template

More Information

Activity Designer Library

The Activity Designer Library template is used to create a custom activity designer. Custom activity designers are used to create the design-time experience for activity use, controlling how the activity and its property page appear in Visual Studio. For more information, see Creating a Custom Activity Designer.

Activity Library

The Activity Library template is used to create a composite activity from pre-existing activities. For more information, see Workflow Activity Authoring using the Activity class.

WCF Workflow Service Application

The WCF Workflow Service Application template is used to create a workflow that uses message activities to send and receive WCF messages. For more information, see Workflow Services Overview.

Workflow Console Application

The Workflow Console Application template is used to create a workflow that is hosted in a console application. The workflow is implemented as a Sequence activity. For more information, see How To: Create a Workflow.

Other Visual Basic and C# Templates

The following templates appear under other subcategories of the Visual Basic and Visual C# nodes, as indicated.

Project Template

More Information

Windows Azure/Install Windows Azure Tools

Provides instructions for enabling Windows Azure Cloud Service projects by installing Windows Azure Tools. For more information, see How to: Enable Windows Azure Tools

Reporting/Reports Application

Creates a report project to fill in manually or with the Report Wizard.

Silverlight/Silverlight Application

Creates a standard Silverlight application project with the option to host it in a Web project. For more information, see How to: Create a New Silverlight Project.

Silverlight/Silverlight Navigation Application

Creates a Silverlight application project that contains user-interface (UI) components, such as headers, footers, and navigation sidebars.

Silverlight/Silverlight Class Library

Creates a Silverlight class library project for consumption by Silverlight applications.

Test/Unit Test

See Walkthrough: Creating and Running Unit Tests for Managed Code.

Test/Coded UI Test Project

See Verifying Code by Using Coded User Interface Tests.

Test/Web Performance and Load Test Performance Project

See Testing Performance and Stress Using Visual Studio Web Performance and Load Tests.

WCF/Syndication Service Library

See Windows Communication Foundation Services and WCF Data Services in Visual Studio.

WCF/WCF Service Application

For more information, see Windows Communication Foundation Services and WCF Data Services in Visual Studio.

WCF/WCF Service Library

See Windows Communication Foundation Services and WCF Data Services in Visual Studio.

WCF/WCF Workflow Service Application

The WCF Workflow Service Application template is used to create a workflow that uses message activities to send and receive WCF messages.

Visual C++ Windows Templates

Project Template

More Information

ATL/ATL Project

Creates a project that uses the Active Template Library.

CLR/Class Library

Creates a .NET Framework assembly that is consumable from any .NET Framework language.

CLR/CLR Console Application

Creates a console application that executes in the .NET Framework.

CLR/Empty Project

Creates an empty .NET Framework project for creating a local application.

CLR/Windows Forms Application

Creates a .NET Framework application with a Windows Forms user interface.

CLR/Windows Forms Control Library

Creates controls to use in Windows Forms applications that run in the .NET Framework.

General/ Empty Project

Creates an empty project for creating a local application.

General/ Makefile Project

Creates a project for using an external build system.

General/ Custom Wizard

Creates a custom application wizard. For more information, see Designing a Wizard.

MFC/MFC Application

Creates an application that uses the Windows Foundation Class Library. For more information, see MFC Class Wizard.

MFC/MFC DLL

Creates a dynamic link library that uses the Windows Foundation Class Library. For more information, see MFC Class Wizard.

MFC/MFC ActiveX Control

Creates an ActiveX control that uses the Windows Foundation Class Library. For more information, see MFC Class Wizard.

Test/Test Project

Creates a test project to use for automated tests. For more information about how to create automated tests, see Creating Automated Tests Using Microsoft Test Manager.

Win32/Win32 Project

Creates a project to host a Win32 application, console application, DLL, or static library.

Win32/Win32 Console Application

Creates a Win32 console application.

Visual F# Templates

The following templates appear under the Visual F#/Windows or Visual F#/Silverlight subcategories. For information about Visual F# templates, see Using Visual Studio to Write F# Programs.

LightSwitch

The following templates appear under the LightSwitch/Windows subcategory. For more information, see Step 1: Create a LightSwitch Project.

Project Template

More Information

LightSwitch Application (Visual Basic)

Creates a blank LightSwitch application solution.

LightSwitch Application (Visual C#)

Creates a blank LightSwitch application solution.

Other Project Types

These templates appear under the Other Project Types category. The projects in the Setup and Deployment section all use Windows Installer Deployment and are intended to be added to an existing solution.

Project Template

More Information

Setup and Deployment/Enable InstallShield Limited Edition

See Windows Installer Deployment.

Extensibility/Visual Studio Add-in

Visual Studio Add-ins add functionality to the Visual Studio environment. For more information, see How to: Create an Add-In.

Extensibility/Visual Studio Shell Isolated

See Walkthrough: Creating a Basic Isolated Shell Application.

Extensibility/Visual Studio Package

For more information, see Walkthrough: Creating a Basic Isolated Shell Application.

Visual Studio Solutions/Blank Solution

This creates a solution file and directory structure to add projects to.

SQL Server

These templates appear under the SQL Server category.

Project Template

More Information

SQL Server/SQL Server Database Project

Creates an empty project for a SQL Server database.

Modeling Projects Templates

The following templates appear under the Modeling Projects category.

Project Template

More Information

Modeling Project

Creates a blank modeling project. For more information, see How to: Create UML Modeling Projects and Diagrams.

See Also

Concepts

File Types and File Extensions in Visual Basic and Visual C#

Creating Solutions and Projects

Other Resources

Developing Client Applications

Office Development in Visual Studio