1. IdentityUserから派生し、新しいクラスを定義します
public class AppUser : IdentityUser
{
public string DisplayName { get; set; }
}
あなたのDataContext、変更2.
'DbContextパブリッククラスのDataContext'
へ
の公開クラスのDataContext:IdentityDbContext <APPUSER> '
「保護されたオーバーライド無効OnModelCreating(ModelBuilderのビルダー)」のコードを追加します:あなたのDataContext、方法3.
base.OnModelCreating(builder);
4. cmdを実行します。
dotnet ef migrations add "AddIdentity" -p Persistence -s API
スタートプロジェクト5.: "API" ディレクトリ、cmdを実行:
dotnet ef database update
"API" ディレクトリ、nugetパッケージを追加します: 'Microsoft.AspNetCore.Identity.UI' スタートプロジェクト7.
"API"、方法: 'ます。public void ConfigureServices(IServiceCollectionサービス')以下のコードを追加し、スタートプロジェクト8.
// Add Identity Support
var builder = services.AddIdentityCore<AppUser>();
var identityBuilder = new IdentityBuilder(builder.UserType, builder.Services);
identityBuilder.AddEntityFrameworkStores<DataContext>();
identityBuilder.AddSignInManager<SignInManager<AppUser>>();
9. 'のUserManager <APPUSER>のUserManager' を使用して、いくつかのシード・データを追加します。
if (!userManager.Users.Any())
{
var users = new List<AppUser>
{
new AppUser { DisplayName = "Bob", UserName = "bob", Email = "[email protected]" },
new AppUser { DisplayName = "Tom", UserName = "tom", Email = "[email protected]" },
new AppUser { DisplayName = "Jane", UserName = "jane", Email = "[email protected]" }
};
foreach(var user in users)
{
await userManager.CreateAsync(user, "Pa$$w0rd");
}
}