Я использую Asp.Net
встроенного membership framework
, у меня есть требование, где мне нужно, чтобы отобразить имя из logged-in
пользователя, мои aspnet_users
таблицы хранит имя пользователя что-то вроде этого abc001
, который на самом деле пользовательский код пользователя, его имя пользователя хранится в другой таблице, которая связана с таблицей aspnet_users
с foreign key constraint
. Так как я могу отобразить имя пользователя из этой таблицы в моем навигационном меню, которое будет плавать вправо . Как и в случае Facebook
, он отображает имя пользователя logged-in
в заголовке. Edit:Отображает имя текущего пользователя в горизонтальном меню
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;
}
Благодаря
но имя фактически хранится в другой таблице, которая связана со встроенной таблицей, поэтому я думаю, что Memberhip.GetUser(). UserName не даст мне имя. –