リポジトリ パターン データベースにユーザー テーブルがあり、ロールを接続しようとしています。シンプルなメンバーシップをカスタマイズする最良の方法は何ですか?
1804 次
2 に答える
1
プロジェクトのフォルダーにInitializeSimpleMembershipAttribute.cs
あるファイルに構成を設定する必要があります。Filters
そのファイルを開き、次の行を見つけます。
WebSecurity.InitializeDatabaseConnection("DefaultConnection",
"UserProfile",
"UserId",
"UserName",
autoCreateTables: true);
ここで、データベースへの接続文字列 (web.config で宣言する必要があります) を最初のパラメーターに、テーブル名を 2 番目のパラメーターに、UserId 列名を 3 番目のパラメーターに入れるだけです。および UserName 列名を 4 番目のパラメーターに入力します。
最後のパラメーターについては、true に設定すると、単純なメンバーシップが必要なテーブルをデータベースに見つけられない場合、それらが作成されます。
ただし、単純なメンバーシップには別のテーブルを使用し、SM に独自のテーブルを作成させることをお勧めします。その後、次のようなコード ブロックを使用して、既存のすべてのユーザーを SM テーブルに一度だけ追加できます。
var oldUsers = db.Users.ToList();
foreach (User u in oldUsers)
{
WebSecurity.CreateUserAndAccount(u.UserName, u.Password);
}
その後、メンバーシップと承認のジョブに問題はなくなりました...
于 2013-08-22T09:35:11.480 に答える
1
次の MSDN の記事をお読みください。
および次の CodeProject 記事:
于 2013-08-22T09:33:52.413 に答える