Asp.net-core-identity-migrations
ASP.NET Core-アイデンティティの移行
この章では、IDの移行について説明します。 ASP.NET Core MVCでは、認証およびID機能はStartup.csファイルで構成されます。
エンティティクラスの1つを変更するとき、またはDBContext派生クラスを変更するときはいつでも、データベースに適用する新しい移行スクリプトを作成し、コード内のスキーマと同期させる必要があります。
これがアプリケーションの場合です。FirstAppDemoDbContextクラスをIdentityDbContextクラスから派生させ、独自のDbSetを含み、管理するエンティティに関するすべての情報を格納するスキーマも作成するためです。
コマンドプロンプトを開いて、プロジェクトのproject.jsonファイルが存在する場所にいることを確認します。
project.jsonファイルには、この「ef」キーワードをEntityFramework.Commandsにマップするセクションがあります。
ここから移行を追加できます。 また、移行に名前を付ける必要があります。 バージョン2にv2を使用してEnterキーを押してみましょう。
移行が完了すると、移行フォルダーにv2ファイルが作成されます。
ここで、*“ dnx ef database update” *コマンドを実行して、その移行をデータベースに適用します。
Entity Frameworkは、適用する必要がある移行があることを確認し、その移行を実行します。
SQL Serverオブジェクトエクスプローラーを開くと、前に作成したEmployeeテーブルが表示されます。 また、ユーザー、クレーム、ロールを保存する必要がある追加のテーブル、およびユーザーを特定のロールにマッピングするマッピングテーブルも表示されます。
これらの表はすべて、Identityフレームワークが提供するエンティティに関連しています。
- usersテーブル*を簡単に見てみましょう。
AspNetUsersテーブルの列には、継承元のアイデンティティユーザーで見たすべてのプロパティと、UserNameやPasswordHashなどのフィールドを格納する列が含まれていることがわかります。 そのため、ユーザーを作成し、ユーザーのパスワードを検証する機能も含まれているため、組み込みのIdentityサービスの一部を使用しています。