0

テーブル名の名前を変更した UserManager 機能を使用しています (db コンテキスト構成を介して):

        modelBuilder.Entity<User>().ToTable("Users");            
        modelBuilder.Entity<IntUserRole>().ToTable("UserRoles");
        modelBuilder.Entity<IntUserLogin>().ToTable("UserLogins");
        modelBuilder.Entity<IntUserClaim>().ToTable("UserClaims");
        modelBuilder.Entity<IntRole>().ToTable("Roles");

ここで、ロール オプションで [Authorize] 属性を使用したい場合は、DB に対して aspnet_regsql.exe を起動して、必要なすべてのストアド プロシージャを作成する必要があります。

残念ながら、デフォルトの名前付きテーブル (aspne_Roles ...) の新しいセットを作成します。

テーブルを再利用する方法はありますか?

4

1 に答える 1

0

これを解決しました。問題は誤った構成に関連していました。基本的に、特別なロール管理機能は必要ありませんでしたが、ユーザーがロールに割り当てられていないかどうかを確認するだけです。

解決するために、できるだけ単純なものを使用するように構成を変更しました。

<roleManager enabled="true">

これで、ロール管理に使用される名前が変更されたテーブルと、デフォルトのサイト コンテキスト用に初期化された UserManager が使用されます。

于 2014-04-22T15:23:42.413 に答える