Чтобы понять это, и не заставляйте кого-либо читать длинное объяснение, я знаю, что есть проблемы с дефолтами безопасности Microsoft, когда дело доходит до многих его технологий. Я использую ASP.NET и MVC и на самом деле был готов использовать стандартные значения по умолчанию для Microsoft (например, IdentityService) - и изучал его более сложные функции, поэтому я могу их освоить. Но затем я наткнулся на сообщение Брок Аллена в блоге - где он объяснил, что умолчания Microsoft в этих отношениях просто недостаточно хороши. Так вот, где я узнал о его проекте MembershipReboot.brockallen.MembershipReboot подтверждение учетной записи не работает
Я занимаюсь реализацией этой библиотеки, сначала с не таким большим успехом, но набираю силу и добился определенных успехов. Я пошел от него, не работая вообще, чтобы иметь проблемы. Я исправил все это (с небольшой помощью). Теперь страницы входа и регистрации работают, и регистрация работает, а также отправка проверочных писем, все они работают. Вот где я сейчас застрял. Получив подтверждение по электронной почте и нажав ссылку в письме, я перехожу на страницу localhost: ####/ChangeEmail/(контрольный ключ), и это моя новая проблема. Я использую код, взятый из кода примера (SingleTenant).
Когда он переходит на эту страницу, в настройке по умолчанию он сказал мне, что у него есть «System.ArgumentException: account», и он указал на код «if (account.HasPassword())» в Confirm ActionResult ChangeEmailController. Я добавил строку кода выше, что если оператор в этом ActionResult - «Перенаправление (« http: // »+ account.Email); - просто посмотреть, что с этим делать. С этим дополнением он дал мне другую (связанную) ошибку - «Ссылка на объект не установлена в экземпляр объекта». и он указал на тот точный код, который я добавил.
Таким образом, это действительно меня разочаровывает, очевидно, что система работает при загрузке библиотеки, она работает, позволяя фактически зарегистрировать пользователя, она работает, когда вы можете отправить электронное письмо с надлежащим ключом проверки (я сравнил это к записи базы данных, это был тот же код). Но затем, когда нажата ссылка на метод проверки, она не хочет извлекать те же данные учетной записи из базы данных. Я нахожу это довольно странным.
Вы должны оставить свой код, чтобы мы могли рассказать вам, где проблема. – KenL