Ошибка MVC при (почти по умолчанию) создании индивидуальной учетной записи пользователя

Я относительно новичок в MVC, и я начал использовать шаблон проекта MVC по умолчанию в Visual Studio 2013 (Express). Я изменил представления в соответствии со своими потребностями (временно), а затем следовал этому руководству, чтобы добавить 3 новых поля в процесс регистрации пользователей. Я добавил BirthDate и Email, как в учебнике, и третий: FirstName. Все построено и опубликовано нормально.

После этого я загрузил опубликованный сайт в свой домен и протестировал его в Chrome. Все страницы загружаются правильно, но когда я пытаюсь зарегистрировать пользователя, я попадаю на страницу "Ошибка". Я проверил консоль JS, и единственная запись: event.returnValue is deprecated. Please use the standard event.preventDefault() instead.

Вот код для моих классов C#, как показано в руководстве выше:

Просмотр учетной записи / регистрации (новые поля):

<div class="form-group">
    @Html.LabelFor(m => m.Email, new { @class = "col-md-2 control-label" })
    <div class="col-md-10">@Html.TextBoxFor(m => m.Email, new { @class = "form-control" })
    </div>
</div>
<div class="form-group">
    @Html.LabelFor(m => m.FirstName, new { @class = "col-md-2 control-label" })
    <div class="col-md-10">@Html.TextBoxFor(m => m.FirstName, new { @class = "form-control" })
    </div>

Аккаунт ViewModel (Зарегистрировать ViewModel Новые Поля):

[Required]
    [DataType(DataType.Date)]
    public DateTime BirthDate { get; set; }

    [Required]
    [Display(Name = "Email Address")]
    public string Email { get; set; }

    [Required]
    [Display(Name = "First Name")]
    public string FirstName { get; set; }

Модель идентификации (метод ApplicationUser):

public class ApplicationUser : IdentityUser
{
    public DateTime BirthDate { get; set; }
    public string Email { get; set; }
    public String FirstName { get; set; }
}

Контроллер аккаунта (сообщение: метод регистрации):

[HttpPost]
    [AllowAnonymous]
    [ValidateAntiForgeryToken]
    public async Task<ActionResult> Register(RegisterViewModel model)
    {
        if (ModelState.IsValid)
        {
            var user = new ApplicationUser() { UserName = model.UserName, BirthDate = model.BirthDate, Email = model.Email, FirstName = model.FirstName };
            var result = await UserManager.CreateAsync(user, model.Password);
            if (result.Succeeded)
            {
                await SignInAsync(user, isPersistent: false);
                return RedirectToAction("Index", "Home");
            }
            else
            {
                AddErrors(result);
            }
        }

        // If we got this far, something failed, redisplay form
        return View(model);
    }

Пожалуйста, не могли бы вы сообщить мне, если вы думаете, что знаете, что является причиной страницы ошибки (я оставлю ее в живых, чтобы вы могли убедиться сами), или если вы знаете, как я могу найти конкретную ошибку. Любая помощь будет оценена. Благодарю.

Обновление 1: я получаю ту же ошибку при входе в систему, а не когда сообщают, что имя пользователя отсутствует в базе данных. Это должно случиться?

Обновление 2: локально работает нормально.

0 ответов

Другие вопросы по тегам