1

ここのような解決策を試しました aspnetdbメンバーシップのIsApproved値を更新するにはどうすればよいですか? しかし、それでも私にはうまくいきません。isApproved は、新しいメンバーに対して常に true を渡します。

ここでメンバーを作成しています:

MembershipUser member = Membership.Providers[providerAlias].CreateUser("aaa", password, email, null, null, false, null, out newStatus);
            Member.ChangeUsername("aaa", email);
            member.IsApproved = false;
            Membership.UpdateUser(member);

それでも私の新しいメンバーはログインできます。CreateUserWizard には多くの問題があったため、使用していません。

私は自分の登録フォームを持っており、メンバーを作成し、自動的にログインしてプロファイルを入力値で更新し、ログアウトします。私;それが違いを生むかどうかはわかりません-一部の投稿ではそうであると示唆されていますが、メンバーにログインしてプロファイルデータを保存する必要がありますよね?

また、意図的に既存のメンバーの isApproved を変更しても、次のようになります。

    MembershipUser user = Membership.GetUser(_currentProfile.UserName);
    if (user != null)
    {
        user.IsApproved = false;
        Membership.UpdateUser(user);

        Response.Write(user.IsApproved.ToString());
    }

また、変化せず、常に真のままです。

isApproved プロパティを更新して、メンバーの登録が管理者によって検証されるまでメンバーがログインできないようにするにはどうすればよいですか?

アンブラコ6を使用しています。

ありがとうございました

4

1 に答える 1

0

この記事に基づいて解決しました: http://umbraco.miketaylor.eu/2010/08/29/authenticating-new-members-part-2/

メンバー タイプまたは web.config で isApproved プロパティを設定する必要があることを知りませんでした。今では正常に動作しています。

于 2013-05-22T14:38:58.103 に答える