2013-07-12 2 views
12

В ASP.NET MVC5 + VS 2013 (предварительный просмотр во время написания), как мне добавить новый контроллер?В Visual Studio 2013/ASP.NET MVC 5, как добавить новый контроллер?

В прошлых версиях (VS 2012/MVC 4) мне удалось щелкнуть правой кнопкой мыши папку «Контроллеры» и нажать «Добавить контроллер». Этот вариант больше не существует. Куда он пошел?

(Боковое примечание: Я не уверен, что MVC 5 находится там, где происходит изменение, или если это изменение в оснастке VS 2013, когда я обновлял оба. Я подозреваю, что это связано с новым инструментом ASP.NET для VS 2013)

+4

Я спросил, потому что я законно искал, где эта функция появилась с тех пор, как я обновился на прошлой неделе. Я, наконец, нашел его и сделал его здесь для вас или моего будущего. «Чтобы быть предельно ясным, не просто ответить на вопрос и ответить на свой вопрос, его явно поощряют». (источник: http://blog.stackoverflow.com/2011/07/its-ok-to-ask-and-answer-your-own-questions/) –

+0

Это не biggie, но изменил мой рабочий процесс и отличается от большинства MVC, поэтому я решил, что я запомню это. Cheers :-) –

+4

stackoverflow поощряет обмен знаниями в формате QA. – maxpaul

ответ

22

Обновлено этот ответ на 14 ноября 2013 года, после официального выхода VS2013, чтобы отразить изменения в финальной версии -ds

для Visual Studio 2013 (Дата выхода версии)

Примечание: Окончательные выпуски e вернул контекстное меню «Добавить контроллер».

Простой способ:

  1. Щелкните правой кнопкой мыши на папке "Контроллеры" в проекте MVC

  2. Добавить>контроллер ...

  3. Выберите шаблон контроллера. (Я предпочитаю MVC 5 Контроллер Empty)

Альтернативный способ:

  1. Щелкните правой кнопкой мыши на папке "Контроллеры" в проекте MVC

  2. Добавить>Новый Scaffolded товар .. .

  3. Выберите шаблон для контроллера

Этот метод также отображает шаблоны неконтроллеров, такие как виды, области и другие функции WebAPI, что делает список более длинным.

Для Visual Studio 2013 (Preview и Release Candidate)

Примечание: VS 2013 Preview и RC не включил "Add Controller" контекстного меню.

Чтобы создать новый контроллер с Visual Studio 2013 + ASP.NET MVC 5:

  1. правой кнопкой мыши на папке Controllers.
  2. Нажмите «Добавить»>Леса ...
  3. Выберите один из «Контроллер MVC 5 - ???» типы.

??? может быть «Пусто», что означает класс контроллера только без предустановленных представлений ... вплоть до «MVC 5 Controller с действиями и представлениями чтения/записи, используя Entity Framework», который создает класс Controller с несколькими методами и связанным с ним представлением. cshtml-файлы.

В предыдущих версиях Visual Studio + MVC «Add Controller» инициировал настраиваемый мастер эшафотов. В версиях предварительного просмотра 2013 вместо этого отображается список предварительно построенных шаблонов лесов.

+3

Может потребоваться проголосовать за этот ответ: у меня VS2013 окончательный RTM с MVC5, а «Add Controller», «Add Scaffold» нет. Я не уверен, что случилось, я попытался переустановить веб-инструменты. – Quango

+0

Я также обнаружил, что «Контроллер» не указан в шаблонах в диалоговом окне «Добавить». Это был новый новый проект .NET 4.5, MVC + WebAPI. Что-то сломано! – Quango

+0

Quango: меню изменилось между RTM и финальной версией. Мой ответ RTM основывался на VS 2013 Professional RTM, а не на Ultimate. Однако я бы подумал, что они будут похожи. К сожалению, у меня больше нет RTM, поэтому я не могу ответить на этот ответ. –

0

следующие два шага

1) Обновление Visual Studio 2013

2) выгрузить ваш проект от решения исследователя затем загрузить его снова.

1

Дополнительные возможности для Visual Studio 2013 (версия выпуска, окончательная версия).

Ответ Дэн Соренсен должен быть вашим первым портом захода (это было для меня). Однако, если это не исправить, ваше единственное решение - переустановить.

я сначала удалил все расширения и любые другие инструменты (например Azure SDK 2.2), а затем удалил VS 2013.

После перезагрузки, я заново установил VS2013, а затем расширение. После этого снова появились меню контроллера.

+0

Спасибо за продолжение. –

+0

Смешно, что вам придется переустановить все для чего-то подобного. –

1

При работе над новым проектом я заметил, что опция Контроллер присутствовала до тех пор, пока я не добавила ссылку System.Web.Mvc. Удаление ссылки System.Web.Mvc восстановило возможность добавления контроллера MVC 5.
EDIT: добавление нового контроллера автоматически добавляет ссылку System.Web.Mvc.

Смежные вопросы