2016-09-28 6 views
1

私はASP.NET CoreとIdentityでアプリケーションを作成しており、aspnetuseclaimテーブルにカスタムフィールドを追加する必要があります。私はIdentityUseClaim<>をどのように継承しなければならないかを知っており、カスタマイズを行いますが、このクラスを使用するためのアイデンティティコンテキストを作成するのは簡単ではありません。誰かがサンプルを手伝ってくれますか?aspnetcore ID aspnetUserClaimテーブルにカスタムフィールドを追加する方法

+0

主張はキーと値のペアであり、実際に変更するつもりはありません。クレームを変更してもよろしいですか?実際の問題は何ですか?あなたは解決しようとしていますか? – trailmax

+0

私はIDサーバの特定のケースを持っています。特定のクライアントのユーザにクレームを割り当てたいと思います。テーブルにクライアントを追加する必要があります –

+0

十分に公正です。私はこれが質問の一部でなければならないと思う - 答えを出す。 – trailmax

答えて

0

AspNetUserClaimsテーブルも変更する必要がありました。 Created、CreatedBy、Modified、ModifiedByなどの監査フィールドを追加する必要がありました。私にはそれほど明白ではなかったが、ここで私は何をしたのだろうか:

私は、既存のIdentityUserClaim<string>クラスから継承した新しいクラス(AuditableUserClaim)を作成し、そのクラスにカスタムプロパティを追加した。

次に、ApplicationDbContextクラスから別のベースコンストラクタを呼び出す必要がありました。署名は次のようになりました:

public class ApplicationDbContext : IdentityDbContext<ApplicationUser, IdentityRole, string, 
      AuditableUserClaim, IdentityUserRole<string>, IdentityUserLogin<string>, 
      IdentityRoleClaim<string>, IdentityUserToken<string>> 

私はこれが可能でなければならないことを知っていました。