ASP.NET CORE 2 IdentityUserPOCOエラー

NodeJS開発

.NET Core 2を使用することにしましたが、問題が発生しています。Microsoftのドキュメントによると、ナビゲーションプロパティは基本クラスに存在しなくなったのでIdentityUser、元に戻してください。

ビューモデルで各ユーザーがどのような役割を持っているかを参照できますが、これをアプリケーションユーザークラスに入れると次のようになります。

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ビューに表示するための値を取得するにはどうすればよいですか?

Pasgiannis Hands

ApplicationUserクラスがGenericsを使用せずにIdentityUserを拡張して主キーのタイプを定義する場合、デフォルトのタイプである文字列を使用します。

その場合、ナビゲーションエンティティのキ​​ーのタイプをintからstringに変更する必要があります。

ApplicationUserクラスは次のようになります

public class ApplicationUser : IdentityUser
{
    public virtual ICollection<IdentityUserRole<string>> Roles { get; } = new List<IdentityUserRole<string>>();
    public virtual ICollection<IdentityUserClaim<string>> Claims { get; } = new List<IdentityUserClaim<string>>();
    public virtual ICollection<IdentityUserLogin<string>> Logins { get; } = new List<IdentityUserLogin<string>>();
}

この記事はインターネットから収集されたものであり、転載の際にはソースを示してください。

侵害の場合は、連絡してください[email protected]

編集
0

コメントを追加

0

関連記事

分類Dev

ASP.NET Core 2、jQueryPOSTデータnull

分類Dev

Asp .Net Core 2 + SignalR(1.0.0-alpha2-27025)+ / signalr / negotiate404エラー

分類Dev

Asp.Net Core 2 Web API500内部サーバーエラー

分類Dev

ASP.NET Core 2AuthenticationSchemes

分類Dev

Asp.Net Core 2 Complex TagHelper

分類Dev

C#ASP.NET Core 2 HashAlgorithm

分類Dev

HtmlSanitizer + ASP.NET Core 2 with DI

分類Dev

ASP.NET Core "CreatedAtRoute"エラー

分類Dev

ASP.NET Core "CreatedAtRoute"エラー

分類Dev

エラー:$ injector:modulerr ASP.Net Core

分類Dev

ASP.NET Core 2.0 WebApiエラー

分類Dev

ASP.NET Core 2.0 EntityfarmeworkCoreエラーUbuntu

分類Dev

ASP.Net Core2複数のコントローラー

分類Dev

ASP.Net Core 2 Razor AJAX GETとパラメーター?

分類Dev

Asp.Net Core 2MVC部分ビューに検証エラーメッセージが表示されない

分類Dev

ASP.NET Core2-アイデンティティ-カスタムロールでのDIエラー

分類Dev

ASP.NET Core2でユーザーIDを取得する

分類Dev

ASP.NET Core2でユーザーIDを取得する

分類Dev

LinuxデーモンとしてのASP.NET Core RC2

分類Dev

ASP.NET Core 2AngularテンプレートのAngularCLI?

分類Dev

ASP.Net Core2のグローバル変数

分類Dev

ASP.Net Core 2JSONケース変換

分類Dev

ASP.NET Core 2、ODatav4属性ルーティング

分類Dev

ASP.NET Core2コントローラーからPDFを返す

分類Dev

Asp.Net Core2ベアラートークンの検証

分類Dev

ASP.NET Core Web API500内部サーバーエラー

分類Dev

AJAX paramter to ASP .NET Core 2 Controller Action

分類Dev

What is difference between View and Page in Asp.net core 2?

分類Dev

C# ASP.NET Core 2 HashAlgorithm

Related 関連記事

ホットタグ

アーカイブ