Я пытаюсь исчерпать все свои собственные ресурсы, прежде чем приехать сюда и беспокоить сообщество очень конкретным вопросом, который, несомненно, является моим собственным провалом, но я исчерпал их сейчас.
Я делаю сайт MVC3, построенный в основном из пакета Mvc Scaffolding Стивена Сандерсона от NuGet. (Он также использует SQL CE EF Code First и пакет EriceJ SqlCeMembership.) Все идет гладко.
Пока я не добавлю [Authorize (Users = "admin")] на некоторые методы контроллера, которые я не хочу публиковать.
А затем я получаю сообщение об ошибке 404, указывающее, что URL-адрес запроса "/ Account / Login" не найден.
Загадочная вещь в том, что нигде на моем сайте нет запроса на / Account / Login. Раздел аутентификации из веб-конфигурации:
<authentication mode="Forms">
<forms loginUrl="~/Account/LogOn" timeout="2880" />
</authentication>
Примечание: «LogOn», а не «Login». На самом деле я выполнил Cntl-F (Find) для строки «Логин» (без учета регистра, соответствует целому слову) для всего решения и не могу ничего найти. Затем я продолжил поиск файлов по всему диску и не смог найти ничего значимого.
Я уверен, что это что-то глупое, что я сделал, потому что, если я создаю новый проект Mvc и добавляю атрибут Authorize к одному из методов, он работает нормально, перейдя в Account / LogOn. Но я понятия не имею, что я сделал, и у меня нет идей, как его найти.
Может кто-нибудь мне помочь?