1

誰かが私を正しい方向に向けることができれば、本当に感謝しています。

MVC 4 のメンバーシップは初めてで、Google で見つけたリンクのほとんどは MVC3 用です。

ユーザー情報を保存するにはどうすればよいですか? デフォルトのデータベースには UserName フィールドがあります。追加のフィールド (電話番号、ニックネームなど) を追加できますか、それとも MyUser クラスを作成して ID をメンバーシップの UserId にリンクできますか?

どうもありがとうございました!!!

4

1 に答える 1

2

MVC4 は SimpleMembership を使用します。これが従来の会員制との大きな違いです。

これが機能する方法は、独自の Users テーブルを作成してから、SimpleMembership に、Users テーブル内のどのフィールドを独自の目的で使用するかを指示することです。

Filters/InitializeSimpleMembershipAttribute.cs を見ると、SimpleMembershipInitializer クラスに次のような行があります。

WebSecurity.InitializeDatabaseConnection("DefaultConnection", "UserProfile", 
   "UserId", "UserName", autoCreateTables: true);

ここで、フィールド「UserProfile」をテーブル名と一致するように、「UserId」を UserId 列名と一致するように、「UserName」をユーザー名フィールドと一致するように変更します。

次に、必要な他のフィールドをこのテーブルに追加するだけです。

ここでの問題は、多くの人が犯すのと同じ過ちを犯すことです。メンバーシップは、ログイン資格情報以外のものではありません。それでおしまい。他のフィールドは気にしません。それらを独自のデータベースに入れ、ユーザー ID に基づいて検索します。

于 2012-09-27T20:38:34.023 に答える