Несколько Контроллеров с одним Именем в ASP.NET MVC 2

Я получаю следующую ошибку при попытке запустить мое приложение MVC ASP.NET:

Запрос на 'Учетную запись' нашел следующие контроллеры соответствия: uqs.Controllers.Admin.AccountController MvcApplication1.Controllers.AccountController

Я искал проект MvcApplication1.Controllers.AccountController для удаления его но я не могу найти соответствие.

Я пробую к зарегистрированному маршрут для фиксации его:

 routes.MapRoute(
     "LogAccount", // Route name
     "{controller}/{action}/{id}", // URL with parameters
     new { controller = "Account", action = "LogOn", id = "" },
     new string[] { "uqs.Controllers.Admin" } // Parameter defaults
 );

но это не решило его.

Несколько типов были найдены тем соответствием контроллер под названием 'Учетная запись'.

Как я могу решить эту проблему?

12
задан George Stocker 13 April 2010 в 12:57
поделиться

3 ответа

В вашем приложении не может быть более одного контроллера с именем Аккаунт , даже в разных пространствах имен.

Эти контроллеры необходимо разделить на Область (функция в ASP.NET MVC 2).

Если вы выполните поиск для AccountController , вы найдете в своем приложении все контроллеры с именем Account ; и переместите их в разные области , если вы хотите их обоих, или удалите одну.

11
ответ дан 2 December 2019 в 02:51
поделиться

AccountController автоматически создается ASP.NET MVC Visual Studio шаблон. Он находится в Controllers \ AccountController.cs . Попробуйте найти его в проекте и удалить.

0
ответ дан 2 December 2019 в 02:51
поделиться

Если вы рефакторите свой проект и измените пространство имен и сборку по умолчанию с "MVCApplication1" на "uqs", вы можете получить 2 сборки в каталоге bin (новую и старую). Вы можете получить эту ошибку, потому что AccountController находится в обеих сборках.

Очистите каталог bin от старой MVCApplication1.dll.

61
ответ дан 2 December 2019 в 02:51
поделиться
Другие вопросы по тегам:

Похожие вопросы: