我对Identity进行了更改,以添加自定义字段。在一个教程中,它提到我需要注入
@using Microsoft.AspNetCore.Identity
@inject SignInManager<ApplicationUser> SignInManager
@inject UserManager<ApplicationUser> UserManager
<ul class="navbar-nav">
@if (SignInManager.IsSignedIn(User))
{
<li class="nav-item">
<a class="nav-link text-dark" asp-area="Identity" asp-page="/Account/Manage/Index" title="Manage">Hello @User.Identity.Name!</a>
</li>
<li class="nav-item">
<form class="form-inline" asp-area="Identity" asp-page="/Account/Logout" asp-route-returnUrl="@Url.Action("Index", "Home", new { area = "" })">
<button type="submit" class="nav-link btn btn-link text-dark">Logout</button>
</form>
</li>
}
else
{
<li class="nav-item">
<a class="nav-link text-dark" asp-area="Identity" asp-page="/Account/Register">Register</a>
</li>
<li class="nav-item">
<a class="nav-link text-dark" asp-area="Identity" asp-page="/Account/Login">Login</a>
</li>
}
</ul>
ApplicationUser文件(见下文)已经存在,并且已经对项目中对IdentityUser的所有引用进行了更改。由于某些原因,它不想识别我的登录部分文件中的文件。
using System;
using Microsoft.AspNetCore.Identity;
namespace WebApp1.Data
{
public class ApplicationUser : IdentityUser
{
public string type { get; set; }
}
}
当我觉得我做的一切都是对的时候,我是不是错过了什么?我不知所措,尝试了一些我在谷歌上找到的东西,但似乎没有任何作用。
我添加了@using WebApp1。数据行移到部分文件的顶部