.NET Core 2を使用することに決めましたが、問題が発生しています。 Microsoftのドキュメントによれば、ナビゲーションプロパティは基本クラスIdentityUser
に存在しなくなりました。ASP.NET CORE 2 IdentityUser POCOエラー
私は、各ユーザーが自分のビューモデルではありますが、私は自分のアプリケーションのユーザー・クラスにこれを入れたときにどのような役割参照することができます。
public virtual ICollection<IdentityUserRole<int>> Roles { get; } =
new List<IdentityUserRole<int>>();
public virtual ICollection<IdentityUserClaim<int>> Claims { get; } =
new List<IdentityUserClaim<int>>();
public virtual ICollection<IdentityUserLogin<int>> Logins { get; } =
new List<IdentityUserLogin<int>>();
と私のモデルビルダーにこれを追加します。
builder.Entity<ApplicationUser>()
.HasMany(e => e.Claims)
.WithOne()
.HasForeignKey(e => e.UserId)
.IsRequired()
.OnDelete(DeleteBehavior.Cascade);
builder.Entity<ApplicationUser>()
.HasMany(e => e.Logins)
.WithOne()
.HasForeignKey(e => e.UserId)
.IsRequired()
.OnDelete(DeleteBehavior.Cascade);
builder.Entity<ApplicationUser>()
.HasMany(e => e.Roles)
.WithOne()
.HasForeignKey(e => e.UserId)
.IsRequired()
.OnDelete(DeleteBehavior.Cascade);
エラーが発生するThe entity type 'IdentityUserLogin<int>' requires a primary key to be defined.
関連するMicrosoftのマニュアルはこちらhttps://docs.microsoft.com/en-us/aspnet/core/migration/1x-to-2x/identity-2x
User.Role
の値を表示するにはどうすればよいですか?
恐ろしいのようになります!ありがとう、それは働く:) –
あなたがそれが役に立つと分かった場合、答えをupvoteしてください。また、それがあなたの質問に答えるならば、それを正しい答えとして受け入れるべきです。 –
私は正しい答えとして受け入れてくれましたが、私のアップヴォートは記録されましたが、公に表示されるという評判は十分ではありません –