Cóż, myślę, że tytuł jest wystarczająco jasny.Jaka jest różnica między HttpContext.Current.User i Thread.CurrentPrincipal w asp.net?
Odpowiedz
Największą różnicą jest to, że nie muszą być takie same.
Ogólnie rzecz biorąc, HttpContext.Current.User jest użytkownikiem logowania, podczas gdy Thread.CurrentPrincipal jest tożsamością procesu roboczego.
W programie IIS 5.x wątek.CurrentPrincipal jest domyślnie ASPNET. W usługach IIS 6 i nowszych funkcja Thread.CurrentPrincipal domyślnie jest usługą sieciową lub kontem puli aplikacji.
Aby uczynić go złożonym, po włączeniu personifikacji ASP.NET, obie będą takie same, jak użytkownik logowania. :)
Spróbuj przeczytać kilka naprawdę dobrych książek na ten temat i artykułów Microsoft MSDN,
http://msdn.microsoft.com/en-us/library/ms998351.aspx
Kolejna propozycja jest użycie debuggera aby dołączyć do procesu roboczego i sprawdzić te przy starcie. To może dać lepszy wygląd.
Kolejną dużą różnicą jest to, że twój kod nie zawsze ma dostęp do HttpContext. (Na przykład, jeśli masz wszystkie swoje bloki w zespole, które mogą lub nie mogą być używane z aplikacji internetowej), podczas gdy dwa konta użytkowników mogą być różne, jeśli użyjesz Thread.CurrentPrincipal, wtedy twój kod zawsze będzie w stanie uzyskać w tym obiekcie użytkownika bez względu na to, gdzie jesteś w kodzie.
- 1. W ASP.Net, jaka jest różnica między <% = i <% #
- 2. Jaka jest różnica między <% # i <% = w ASP.NET MVC?
- 3. Jaka jest różnica między Session.Abandon() i Session.Clear() w ASP.Net?
- 4. Jaka jest różnica między Widok i PartialView w ASP.NET MVC?
- 5. Jaka jest różnica między? : i ||
- 6. Jaka jest różnica między $ i $$?
- 7. Jaka jest różnica między Databinder.Eval i Container.DataItem?
- 8. Jaka jest różnica między Json i Jsonp?
- 9. Jaka jest różnica między = i: = w mysql?
- 10. Jaka jest różnica między! = I =! w Javie?
- 11. Jaka jest różnica między 'i "w PHP
- 12. Jaka jest różnica między! i !! w yaml?
- 13. jaka jest różnica między @ i @@ w module?
- 14. Jaka jest różnica między * i. * W Matlab?
- 15. Jaka jest różnica między | i || w MATLAB?
- 16. Jaka jest różnica między * i * | * w CSS?
- 17. Jaka jest różnica między ASP.NET Identity i IdentityServer?
- 18. Jaka jest różnica między Application_AuthenticateRequest i FormsAuthentication_OnAuthenticate
- 19. Różnica między aspem i asp.net
- 20. Jaka jest główna różnica między GridView/DetailsView/FormView w ASP.net
- 21. Jaka jest różnica między System.Windows.Controls.Control i System.Windows.Forms.Control?
- 22. Jaka jest różnica między asersem i static_assert?
- 23. Jaka jest różnica między PropertyChangeListener i VetoableChangeListener?
- 24. Jaka jest różnica między Ja i Ja?
- 25. Jaka jest różnica między ATL i WTL?
- 26. Jaka jest różnica między FontMetrics.stringWidth() i FontMetrics.getStringBounds()?
- 27. Jaka jest różnica między "CompletionStage" i "CompletableFuture"?
- 28. Jaka jest różnica między CellClick i CellMouseClick?
- 29. Jaka jest różnica między ObjectResult i JsonResult
- 30. Jaka jest różnica między ssize_t i ptrdiff_t?