2011-04-18 29 views
4

私は、ASP.NET Webアプリケーションテンプレート(Webフォーム、MVCではなく)からビルドされたサンプルプロジェクトに取り組んでいます。ユーザーがログインしたら、ユーザーのIDを取得してセッション変数に格納して、ページ間で渡すことができます。 ASP.NETメンバーシッププロバイダからユーザーのIDを取得するにはどうすればよいですか?ユーザーのIDによって、私は会員データベースのGUIDを参照しています。ユーザーのIDを取得する方法はありますか?現在ログインしているユーザーのIDを取得するにはどうすればよいですか?

私は、デフォルトのデータベース・スキーマを使用していますし、それは私のサーバーに展開しています。

ありがとうございます!

答えて

8

これを試してみてください:

MembershipUser membershipUser = Membership.GetUser(); 
string UserID = membershipUser.ProviderUserKey.ToString(); 
5

は、あなたの周りのユーザーIDを渡す必要はありません。現在認証されたユーザーはHttpContext.Current.Userに格納されます。

1

あなたはクラスの静的メソッドを定義し、それを使用することができます。

public static Guid getCurrentUserGUID(){ 
    if (HttpContext.Current.User.Identity.IsAuthenticated) 
    { 
     MembershipUser myObject; 
     myObject = Membership.GetUser(HttpContext.Current.User.Identity.Name); 
     return (Guid)myObject.ProviderUserKey; 
    } 
    return Guid.Empty;  
} 
関連する問題