web-dev-qa-db-ja.com

カスタムテーブルを使用してasp.netmvc 5IDを拡張する

個々のユーザーアカウントのセキュリティがユーザーロールと一元化されたユーザー管理で拡張されたasp.netmvc 5アプリケーションがあります(ユーザーはアカウントを作成できません。アプリケーション管理者、つまり私だけがアカウントを作成してロールを割り当てます)。

私のユーザークラスは次のようになります。

public class ApplicationUser : IdentityUser
{

// User name, full name, e-mail etc....

}

そしてそれはアイデンティティによって提供される「AspNetUsers」テーブルに保存されます...

次に、CompanyIDプロパティをApplicationUserクラスに追加し、会社情報(データベースにすでに存在する)を含む新しいテーブルを追加して、これを拡張する必要があります。

誰かが私にこれを行う方法の情報を見つける場所を教えてもらえますか?

9
onedevteam.com

次のように、会社のテーブルにマッピングを追加する必要があります。

public class ApplicationUser : IdentityUser
{

// User name, full name, e-mail etc....
    public virtual ICollection<Company> Companies { get; set; }
}

および企業内:

public class Company
{

    //other properties
    public virtual ApplicationUser  User { get; set; }
}

次に、パッケージマネージャーコンソールでAdd-Migrationコマンドを使用して新しい移行を追加します。この瞬間の後、移行フォルダに移行スクリプトが表示されます。

次に、同じコンソールでUpdate-Databaseを呼び出して、データベースへの移行を適用します。

12
Oleksii Aza