[英]User.Identity.Name or GetUserName not working on MVC 5
我正在一個MVC系統上工作,在該系統中,我已經實現了將日志顯示為要顯示的初始頁面(如啟動屏幕),並且一旦用戶成功登錄,便將其重定向到主視圖。
接下來,我需要做的是:
一個用戶在主視圖中,有一個部分試圖顯示用戶名。 例如:約翰·史密斯(John Smith)。 為此,我使用以下方法:
User.Identity.Name
要么
User.Identity.GetUserName
但是它們似乎都不起作用。 名稱不顯示。 查看當我從VS創建我的MVC項目時生成的表, AspNetUser
表沒有名稱,姓氏或全名的任何列。 相反,它具有一些列,其中之一是UserName
,它存儲像這樣的數據: john.smith
。
因此,為了顯示用戶的姓名和姓氏,我應該在該表上創建額外的列並更新寄存器視圖以輸入此類數據嗎?
提前致謝
首先,如果您已經正確設置了ASP .NET Identity
或者使用的是ASP .NET Identity
附帶的項目入門模板,則在View中應該可以進行以下操作:
@User.Identity.Name
@User.Identity.GetUserName()
另外,如果要向用戶添加自定義屬性,則必須將這些屬性添加到ApplicationUser
類或IdentityUser
繼承的任何其他類中,然后在IdentityDbContext
使用該類...
public class ApplicationUser : IdentityUser
{
public string FirstName { get; set; }
public string LastName { get; set; }
}
public class ApplicationDbContext : IdentityDbContext<ApplicationUser>
{
public ApplicationDbContext()
: base("DefaultConnection")
{
}
}
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.