sql >> データベース >  >> RDS >> Mysql

MySQLでasp.netメンバーシップテーブルを読み取るときにエラーが発生する

    OnModelCreation をオーバーライドすることで、asp.netのIDおよびメンバーシッププロバイダーのテーブル名を再マップできることがわかりました。 IdentityModelsのメソッド .cs。

    解決策は次のとおりです。

        protected override void OnModelCreating(System.Data.Entity.DbModelBuilder modelBuilder)
                {
                    base.OnModelCreating(modelBuilder);
    
                    modelBuilder.Entity<ApplicationUser>().ToTable("aspnetusers");
                    modelBuilder.Entity<IdentityRole>().ToTable("aspnetroles");
                    modelBuilder.Entity<IdentityUserRole>().ToTable("aspnetuserroles");
                    modelBuilder.Entity<IdentityUserClaim>().ToTable("aspnetuserclaims");
                    modelBuilder.Entity<IdentityUserLogin>().ToTable("aspnetuserlogins");
    
    }
    

    問題の原因となっているデータベースにあるため、すべての標準asp.netメンバーシップテーブル名を明示的に小文字に設定していることに気付きました。

    これで、LinuxベースのMySQL DBに接続されている既存のWebアプリから、メンバーシップに接続、認証、および管理できるようになりました。

    これがお役に立てば幸いです。



    1. 列のデータが切り捨てられましたか?

    2. 2つのテーブルからの一致するレコード

    3. ステートメントにWHEREがあるのに、ストアドプロシージャが「データなし-ゼロ行がフェッチ、選択、または処理されました」というエラーをスローするのはなぜですか?

    4. SQL:フルネームフィールドから名、ミドルネーム、ラストネームを解析します