簡體   English   中英

MVC3-獲取經過身份驗證的用戶的部門名稱

[英]MVC3 - Get Authenticated User's department name

在我的應用程序中,我有一個數據庫表,其中包含用戶列表和部門的相關表。 只要用戶模型是我正在操作的當前對象的屬性(從數據庫中檢索),我就可以“深入”訪問用戶的部門名稱...或任何其他作為屬性的信息,這沒有問題該用戶obj的。

我希望能夠對當前已通過身份驗證的用戶執行相同類型的數據訪問。...這顯然是完全不同的模型。 誰能告訴我是否可以將屬性附加到經過身份驗證的用戶模型,或者至少將其綁定到現有對象?

在此先感謝您的幫助!

更新:我想澄清一下,我在談論用戶AuthCookie。

有一個名為FormsAuthenticationExtensions的NuGet軟件包,可簡化將自定義數據插入身份驗證cookie所需的代碼。

例如,要存儲數據,請執行以下操作:

var ticketData = new NameValueCollection
{
    { "name", user.FullName },
    { "emailAddress", user.EmailAddress }
};
new FormsAuthentication().SetAuthCookie(user.UserId, true, ticketData); 

並找回它:

var ticketData = ((FormsIdentity) User.Identity).Ticket.GetStructuredUserData();
var name = ticketData["name"];
var emailAddress = ticketData["emailAddress"]; 

是的,您可以將其他信息添加到身份驗證cookie,但是您需要自己生成FormsAuthenticationTicket和cookie。

設置用戶數據的一個很好的例子在這里

這里有一個恢復它的例子

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM