2012-09-06 50 views
0

問題的總體思路是,如果你能想象如何通常在任何給定的網站上創建一個帳戶。註冊後,您完成的操作與您已登錄的帳戶相對。設想您的登錄包含多個帳戶,但您希望完成的操作只針對通過下拉菜單選擇的個人帳戶。下拉從屬頁面

所有的網頁在整個網站都是一樣的,你只需要選擇誰來完成這個動作。目前,我正在發佈用戶名以及我預先形成的每個操作,以便確定由誰來完成此操作。但我認爲有人可能會對如何更好地實現這一目標有一些想法,並以更清潔的方式達到相同的結果?

由於現在我所做的只是在每個表單的頂部添加一個選擇框(在用戶導航時重置爲默認值,令人討厭的我知道!)。我不確定某種助手是否是一個很好的解決方案,可以先攔截所有操作並添加用戶名?我應該在哪裏維護當前選擇用戶名的狀態,可能是cookie或其他內容?一般只是混淆了什麼樣的合作伙伴可能最適合這個問題。

任何想法將非常感激!

+0

會話或餅乾看起來合理的地方來存儲選定的用戶名。 –

+0

關於通過javascript和每個請求傳遞的cookie來維護下拉菜單的想法,但它似乎有點混亂?必須抓住它並且一直設置它,並且必須將它寫入每個帖子以發送到服務器? – Sparkle

回答

0

我認爲最好的方式在服務器端檢查登錄狀態並使用標準的FormsAuthentication,比你在User.Identity.Name有你活動的用戶名。

所以在登錄時,你應該設置身份驗證coockie:

FormsAuthentication.SetAuthCookie(username, true); 

而註銷或更改用戶:

FormsAuthentication.SignOut(); 

這是非常標準的功能,你可以看到它在默認的應用程序,ASP。網絡mvc 3創建。

鏈接,您可能需要: