Membership.GetUser()和Context.User之間的區別是什麼,建議用於獲取有關當前用戶的信息?Membership.GetUser()vs Context.User
5
A
回答
3
如果您沒有爲您的站點配置成員資格,getuser()將不會產生任何結果。
Context.user是交給asp.net運行時的身份令牌,如果除匿名訪問以外的任何身份驗證都配置爲站點,則會產生用戶。
3
Membership.GetUser意味着使用MembershipProvider。它只是從任何配置的存儲中檢索用戶信息。 (例如ActiveDirectory,SQL Server)。 Context.User是當前請求的IPrincipal安全上下文。
相關問題
- 1. Null Context.User
- 2. 「Context.User」可以爲null嗎?
- 3. Membership.GetUser()&MARS
- 4. Membership.GetUser - 表+場
- 5. FormsAuthentication Membership.GetUser()Null
- 6. Membership.GetUser()返回NULL
- 7. Membership.GetUser()using Guid
- 8. OnConnected上的SignalR Context.User爲空
- 9. 幫助Membership.GetUser ASP.NET C#
- 10. Membership.GetUser()建議使用?
- 11. Membership.GetUser()內的TransactionScope拋出TransactionPromotionException
- 12. Membership.GetUser()。ProviderUserKey總是返回空
- 13. Membership.GetUser()。UserName; (.NET 4,MVC 3)
- 14. Membership.GetUser()// GetUser(userName)返回一個空用戶
- 15. 從HttpModule調用時,Membership.GetUser()失敗
- 16. Membership.GetUser(userName,isOnline)總是更新LastActivityDate
- 17. 在FormsAuthenticationTicket超時後重新初始化context.User
- 18. 爲什麼現在ASP.NET主頁上的Context.User爲null?
- 19. SignalR 0.5.2 - Context.User在斷開連接時爲空
- 20. Membership.GetUser(用戶名) - 如何返回正確的框?
- 21. 爲什麼Membership.GetUser()試圖創建表應用程序?
- 22. .NET客戶端應用程序服務(Membership.GetUser())
- 23. 爲什麼「Membership.GetUser(strUser)」什麼都不返回?
- 24. 將User.Identity.Name生成與Membership.GetUser()相同的數據。用戶名
- 25. .NET Membership.GetUser()在IE9中嵌入if9和safari時爲null
- 26. IIS7集成管道模式:Context.User對於Windows間歇性爲空Auth
- 27. vs vs 2008 vs vs 2010
- 28. Exec的VS ExecWait VS ExecShell VS nsExec :: Exec的VS nsExec :: ExecToLog VS nsExec :: ExecToStack VS ExecDos VS ExeCmd
- 29. CGL vs AGL vs OpenGL vs NSOpenGL vs CoreAnimation(CALayer)
- 30. VS VS VS VS 11中的MVC測試
聽起來就像你說Membership.GetUser()會從成員資格中獲得用戶(足夠明顯),而Context.User會從更廣的範圍獲取用戶 - 任何東西。因此,例如,使用Windows身份驗證,不會從Membership.GetUser()中產生任何內容,但會從Context.User中產生Windows用戶。 (這似乎是從快速測試的情況。) 在這種情況下,如果您肯定使用會員供應商,建議使用哪種方法? – zimdanen 2010-04-29 01:39:15
MembershipProvider,以我的經驗;主要用於在身份驗證需要一定靈活性時,如果需要,甚至可以擁有XMLMembershipProvider。如果您使用基於表單的身份驗證,membershipprovider可能是最簡單的方法。 – Pierreten 2010-04-29 01:50:27
更深入地看,它看起來像Context.User真的提供最少的信息。我認爲你是正確的Membership.GetUser()。 然後,如果您只需要從Context.User獲取的信息,則可能會使用Membership.GetUser()效率拖動。 – zimdanen 2010-04-29 02:00:22