Thread.CurrentPrincipal.Identity vs HttpContext.User.Identity

可能重复:
http.context.user和thread.currentprincipal之间的区别以及何时使用它们?

这两个在ASP.NET应用程序中有什么区别?

我知道当用户通过FormsAuthentication身份validation时,会设置HttpContext.User.Identity 。 但什么时候设置Thread.CurrentPrincipal.Identity

他们总是保持相同的价值吗?

对于无法访问HttpContext的应用程序的其他层,这仍然适用吗?

HttpContext.User.Identity是您的Web应用程序中当前登录的用户。

Thread.CurrentPrincipal仅在 。 通常这适用于基于Windows的应用程序(Winforms,WPF ..)

如果你使用HttpContext.User.Identity等于Thread.CurrentPrincipal