Я новичок в ASP.NET Core и в настоящее время работаю с платформой Identity. Вместо того, чтобы запрашивать адрес электронной почты и пароль во время регистрации, я хочу, чтобы он запрашивал идентификатор, имя, номер телефона, должность и школу.
После регистрации он должен перенаправить меня на домашняя страница.
Кроме того, при входе в систему вместо адреса электронной почты и пароля следует запрашивать идентификатор и номер телефона. Я попытался соответствующим образом изменить код, и он показывает ожидаемые поля. Однако когда я нажимаю кнопку регистрации после ввода всех необходимых данных, страница просто перезагружается и не перенаправляется на домашнюю страницу. Входные данные также не сохраняются на SQL Server.
Может ли кто-нибудь помочь определить, почему это происходит? Ниже я вставляю фрагменты кода с именами файлов.
Я определяю app.MapRazorPages(); на странице program.cs и в _layout.cs< /code> Я определил частичное имя="_LoginPartial"/>
ApplicationUser.cs:
public string AdminId { get; set; }
public string AdminName { get; set; }
public string AdminPhoneNumber { get; set; }
public string AdminSchool { get; set; }
public string AdminRole { get; set; }
DbContext.cs:
public class ApplicationUserEntityConfiguration : IEntityTypeConfiguration
{
public void Configure(EntityTypeBuilder builder)
{
builder.Property(x => x.AdminId);
builder.Property(x => x.AdminName);
builder.Property(x => x.AdminPhoneNumber);
builder.Property(x => x.AdminSchool);
builder.Property(x => x.AdminRole);
}
}
register.cshtml:
Admin Id
Admin Name
Admin Phone Number
Admin School
Admin Role
register.cshtml.cs:
[Required]
[Display(Name = "Admin ID")]
public string AdminId { get; set; }
[Required]
[Display(Name = "Admin Name")]
public string AdminName { get; set; }
[Required]
[Display(Name = "Admin Phone Number")]
[Phone]
public string AdminPhoneNumber { get; set; }
[Required]
[Display(Name = "Admin School")]
public string AdminSchool { get; set; }
[Required]
[Display(Name = "Admin Role")]
public string AdminRole { get; set; }
await _userStore.SetUserNameAsync(user, Input.Email, CancellationToken.None);
await _emailStore.SetEmailAsync(user, Input.Email, CancellationToken.None);
var result = await _userManager.CreateAsync(user, Input.Password);
if (result.Succeeded)
login.cshtml:
Admin ID
Admin Phone Number
login.cshtml.cs:
[Required]
[Display(Name = "Admin ID")]
public string AdminId { get; set; }
[Required]
[Display(Name ="Admin Phone Number")]
public string AdminPhoneNumber { get; set; }
public async Task OnPostAsync(string returnUrl = null)
{
returnUrl ??= Url.Content("~/");
ExternalLogins = (await _signInManager.GetExternalAuthenticationSchemesAsync()).ToList();
if (ModelState.IsValid)
{
// Fetch user by AdminId and AdminPhoneNumber
var user = await _signInManager.UserManager.Users
.FirstOrDefaultAsync(u => u.AdminId == Input.AdminId && u.AdminPhoneNumber == Input.AdminPhoneNumber);
Подробнее здесь: https://stackoverflow.com/questions/791 ... login-flow
Проблема с изменением процесса регистрации и входа в систему ASP.NET Core Identity. ⇐ C#
-
- Похожие темы
- Ответы
- Просмотры
- Последнее сообщение
-
-
Минимальный API или AccountController для входа в систему с помощью ASP.NET Core Identity?
Anonymous » » в форуме C# - 0 Ответы
- 25 Просмотры
-
Последнее сообщение Anonymous
-
-
-
Минимальный API или AccountController для входа в систему с помощью ASP.NET Core Identity?
Anonymous » » в форуме C# - 0 Ответы
- 17 Просмотры
-
Последнее сообщение Anonymous
-
-
-
Минимальный API или AccountController для входа в систему с помощью ASP.NET Core Identity?
Anonymous » » в форуме C# - 0 Ответы
- 19 Просмотры
-
Последнее сообщение Anonymous
-
-
-
Минимальный API или AccountController для входа в систему с помощью ASP.NET Core Identity?
Anonymous » » в форуме C# - 0 Ответы
- 17 Просмотры
-
Последнее сообщение Anonymous
-