Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

In Visual Studio 2013 / ASP.NET MVC 5, How do I add a new Controller?

In ASP.NET MVC5 + VS 2013 (preview at time of writing), how do I add a new Controller?

In past versions (VS 2012 / MVC 4), I was able to right click on the Controllers folder and click "Add Controller". That option is no longer there. Where did it go?

(Side note: I am not certain if MVC 5 is where the change takes place or if it a change in the VS 2013 tooling as I updated both. I suspect it is with the new ASP.NET tooling for VS 2013)

like image 794
Dan Sorensen Avatar asked Jul 12 '13 20:07

Dan Sorensen


People also ask

How do I add a controller in Visual Studio 2013?

In Solution Explorer, right-click the Controllers folder and then select Add Controller. Name your new controller "HelloWorldController". Leave the default template as Empty controller and click Add.

How do I create a new controller in Visual Studio?

The easiest way to create a new controller is to right-click the Controllers folder in the Visual Studio Solution Explorer window and select the Add, Controller menu option (see Figure 1). Selecting this menu option opens the Add Controller dialog (see Figure 2).

How do you create a controller in ASP.NET MVC?

In Solution Explorer, right-click the Controllers folder and then click Add, then Controller. In the Add Scaffold dialog box, click MVC 5 Controller - Empty, and then click Add. Name your new controller "HelloWorldController" and click Add.

How do I add a new controller code in Visual Studio?

To add a controller, in Visual Studio Code right-click the Controllers folder and select New File. When the text box appears, enter CarsController. cs as the new file name. This will add a new C# file that will also open in the code editor.


1 Answers

Updated this answer on Nov 14 2013, after the official VS2013 release to reflect changes in the final release -ds

For Visual Studio 2013 (Released Version)

Note: The final release brought back the "Add Controller" context menu.

Easy Way:

  1. Right Click on the "Controllers" folder in your MVC project

  2. Add > Controller...

  3. Choose a Controller Template. (I prefer MVC 5 Controller Empty)

Alternate Way:

  1. Right Click on the "Controllers" folder in your MVC project

  2. Add > New Scaffolded Item...

  3. Choose a Controller Template

This method also displays non-controller templates such as views, areas, and more WebAPI features making the list longer.

For Visual Studio 2013 (Preview and Release Candidate)

Note: VS 2013 Preview and RC did not include the "Add Controller" context menu.

To create a new controller with Visual Studio 2013 + ASP.NET MVC 5:

  1. Right click on the Controllers folder.
  2. Click Add > Scaffold...
  3. Choose one of the "MVC 5 Controller - ???" types.

??? can be "Empty" meaning Controller class only with no pre-built views... all the way to "MVC 5 Controller with read/write actions and views, using Entity Framework" which produces a Controller class with multiple methods and associated View .cshtml files.

In prior versions of Visual Studio + MVC, "Add Controller" initiated a configurable scaffold wizard. The preview versions of 2013 instead displays a list of pre-built scaffolding templates.

like image 56
Dan Sorensen Avatar answered Oct 19 '22 02:10

Dan Sorensen