0

私はAsp.Net組み込みを使用しています。ユーザーmembership frameworkの名前を表示する必要があるという要件がありlogged-inます。私のテーブルには、実際にはユーザーのユーザーコードであるaspnet_usersこのようなユーザー名が格納されています。そのユーザー名は別のテーブルに格納されています。でテーブルにabc001リンクされています。そのテーブルからユーザーの名前をナビゲーションメニューに表示するにはどうすればよいですか。ナビゲーションメニューは右に向かって浮かんでいます。同様に、ヘッダーにユーザー名が 表示されます。編集:aspnet_usersforeign key constraintFacebooklogged-in

protected void cmdLogin_Click(object sender, EventArgs e)
        {
            if (Membership.ValidateUser(txtUsername.Text, txtPassword.Text))
            {
                HttpCookie authCookie = FormsAuthentication.GetAuthCookie(txtUsername.Text, false);
                FormsAuthenticationTicket ticket = FormsAuthentication.Decrypt(authCookie.Value);
                FormsAuthenticationTicket newTicket = new FormsAuthenticationTicket(ticket.Version, ticket.Name, ticket.IssueDate, ticket.Expiration, ticket.IsPersistent, "");
                authCookie.Value = FormsAuthentication.Encrypt(newTicket);
                Response.Cookies.Add(authCookie);
                GetUserName(); 
                string redirUrl = FormsAuthentication.GetRedirectUrl(txtUsername.Text, false);
                Response.Redirect(redirUrl);

            }


        }
        public void GetUserName()
        {
            DataClasses1DataContext dt = new DataClasses1DataContext();
            var name =( from nm in dt.Users_AdditionalInfos
                        where nm.UserCode== txtUsername.Text.Trim() 
                        select nm).Single();
           Global.UserName=name.FirstName +" "+ name.LastName; 
        }

ありがとう

4

3 に答える 3

1

あなたが使用することができます、

Membership.GetUser().UserName

...現在ログインしているユーザーを取得します。ユーザーがログインしていない場合は、 からnull値が返されるGetUser()ため、それに応じてコーディングします。

于 2012-05-03T11:45:31.260 に答える
0

試すUser.Identity.Name

HttpContext.User プロパティの詳細を参照してください 。

別のテーブルから別の情報を取得する必要がある場合は、取得して次のusernameようにすることができます

MembershipUser userInfo = Membership.GetUser("myUserName");    
Guid guid = new Guid(userInfo.ProviderUserKey.ToString()); 

ProviderUserKeyはユーザーごとに一意であり、それを外部キーとして使用していると思います。持っているProviderUserKeyので、他のテーブルから必要な詳細を取得できます

于 2012-05-03T11:53:35.340 に答える
0

User.Identity.Name ユーザーのユーザー名にアクセスするために使用できます。ユーザーのメンバーシップ情報を取得する方法について詳しく説明しているので、このチュートリアルをご覧ください。http://mvctutorialsandguides.blogspot.co.nz/2013/03/mvc-c-sql-membership-provider-how-to.html これがお役に立てば幸いです。

于 2013-03-06T09:09:33.273 に答える