1

特定のユーザーを取得しようとしているメンバーシップユーザーコレクションがあります。残念ながら、私はこのMembershipUser.GetUser()方法を使用できません。したがって、現在、次のようなすべてのメンバーシップユーザーのコレクションがあります。

MembershipUserCollection mc = Membership.GetAllUsers();

私がやりたいことは、ログインまたは電子メールのいずれかでこれらのユーザーの 1 人を取得することです (どちらでもかまいません)。コレクションに対してforeachループを実行して比較できることはわかっていますが、もっと良い方法があると想像する必要があります....

前もって感謝します...

なぜ私が getuser メソッドを使用できないのか知りたい方のために、sharepoint が原因だとだけ言っておきましょう。

4

3 に答える 3

2

これを試して

mc.Cast<MembershipUser>().SingleOrDefault(m => m.UserName == "username");
于 2013-03-14T14:37:32.070 に答える
1

MembershipUser.GetUser()代わりに有効なメソッドではありませんMembership.GetUser("johndoe")

var user = Membership.GetAllUsers()
    .Cast<MembershipUser>()
    .FirstOrDefault(m => m.Email == "john@doe.com" || m.UserName == "johndoe");

注意したいことの1つはGetAllUsers、データベースからすべてのユーザーを取得することです。

于 2013-03-18T19:45:50.090 に答える
0

どうやら別の方法があります:

MembershipUser m = mc["username"];
于 2013-03-14T17:31:58.037 に答える