2017-12-29 35 views
1

をintに私はintに文字列からIDを変更しようとしましたが、私は問題が発生しました: 他のすべての投稿は_Startupファイルで使用している:変更アイデンティティIdは

services.AddIdentity<User, IdentityRole<int>>.() 
     .AddEntityFrameworkStores<DatabaseContext,int>() 
     .AddDefaultTokenProviders(); 

が、私は何しようとすると、私はDatabaseContext後にint型を追加するときに同じことが、私はこのエラーを取得する:

「IdentityBuilder」「AddEntityFrameworkStores」は、タイプの最初の引数を受け入れる「AddEntityFrameworkStores」の定義なし拡張メソッドが含まれていない「IdentityBuilder」が見つかりませんでした(usingディレクティブまたはアセンブラがありませんか? Y参照)(CS1061)(プレゼンテーション)

私がしたその他の変更:?

 public class User : IdentityUser <int> 

     public class DatabaseContext :IdentityDbContext <User,IdentityRole<int>,int>      

     protected override void OnModelCreating(ModelBuilder modelBuilder) 

     { 

     modelBuilder.Entity<User>(i => { 
      i.ToTable("Users"); 
      i.HasKey(x => x.Id); 
     }); 
     modelBuilder.Entity<IdentityRole>(i => { 
      i.ToTable("Role"); 
      i.HasKey(x => x.Id); 
     }); 
     modelBuilder.Entity<IdentityUserRole<int>>(i => { 
      i.ToTable("UserRole"); 
      i.HasKey(x => new { x.RoleId, x.UserId }); 
     }); 
     modelBuilder.Entity<IdentityUserLogin<int>>(i => { 
      i.ToTable("UserLogin"); 
      i.HasKey(x => new { x.ProviderKey, x.LoginProvider }); 
     }); 
     modelBuilder.Entity<IdentityRoleClaim<int>>(i => { 
      i.ToTable("RoleClaims"); 
      i.HasKey(x => x.Id); 
     }); 
     modelBuilder.Entity<IdentityUserClaim<int>>(i => { 
      i.ToTable("UserClaims"); 
      i.HasKey(x => x.Id); 
     }); 
      base.OnModelCreating(modelBuilder); 

} 
+0

あなたの投稿をvandalizeしないでください。 Stack Exchangeネットワーク上に掲載することで、SEがそのコンテンツを配布する権利(CC BY-SA 3.0ライセンス)(https://creativecommons.org/licenses/by-sa/3.0 /))。 SEのポリシーによって、どんな破壊行為も元に戻ります。 – Mogsdad

+0

投稿を削除しようとしましたが、削除ボタンが見つかりません – david

+0

@CalvT븃完全に真実ではありません。 _ユーザーは質問に答えがない場合、または回答が1つしかない場合は、アップリンクがありません。質問の下にある削除リンクをクリックするだけです。[ヘルプ/削除された質問](https:// stackoverflow。 com/help/deleted-questions) – Mogsdad

答えて

1

はおそらく、あなたは一般的なTKey引数を受け入れなくなったASP.NET Core 2.xを使用しています。

AddEntityFrameworkStoresメソッドは、ASP.NET Core 1.xで行われた というTKey引数を受け入れません。主キーのデータ型は、 によってDbContextオブジェクトを分析することによって推測されます。

関連リンク:

Configure the ASP.NET Core Identity primary key data type