0

ASP.NET プロジェクトで ASP.NET メンバーシップを使用しようとしています。私が持っている唯一の要件は、ユーザーが電子メールの代わりにユーザー名として EmployeeID を使用してログインする必要があるということです。これは、既定のメンバーシップ プロバイダーを使用して簡単に構成できますか?

aspnet_Membership テーブル内に MobilePin 列があり、代わりにそれをユーザー名として使用する方法があるかどうか疑問に思っています。

ありがとう

4

1 に答える 1

0

独自のメンバーシップ プロバイダーをロールし、提供された値で DB を確認できます。UserName 属性を使用する LogonModel が既にある可能性が高いため、代わりにこれを EmployeeId に変更できます。また、変更されたプロパティを使用してログオン ビューを再生成する必要がある場合もあります。

したがって、ビューの代わりに

        @Html.TextBoxFor(m => m.UserName)

それは次のようなものになります

        @Html.TextBoxFor(m => m.EmployeeId)

Logon モデル クラスの名前を変更したものは何でも。

次に、独自の MembershipProvider を用意し、ValidateUser メソッドをオーバーライドして、DB に対して検証する必要があります。次に、HttpPost アクションのコントローラー メソッドで、メンバーシップ プロバイダーの実装を使用します。

ただし、ドメインに対して認証する必要がある場合を除きます。その場合は、次のリンクを参照してください。

http://msdn.microsoft.com/en-us/library/ff650308.aspx

于 2012-07-20T02:32:26.117 に答える