有一些页试图解释,但我找不到最近的,所以请允许我再问一次。
在asp.net MVC 5中,User.Identity和Thread.CurrentPrincipal.Identity有什么区别?
我试着打印出它的名字和声明,它们在我看来是一样的,也许我漏掉了什么。
发布于 2016-01-22 09:22:19
我相信你读过这样的文章:Thread.CurrentPrincipal对Current.User,没有必要重新解释同样的事情.
您的问题的答案是,我想这取决于您正在开发的应用程序。如果是web应用程序(例如ASP.NET MVC ),那么您应该更喜欢User.Identity,因为User.Identity是为web应用程序设计的。
通常,它们之间没有区别,因为ASP.NET确保它们是同步的。(除非你如斯科特指出的那样改变了它们)
在某些情况下,您不希望(也不能访问) System.Web,所以您必须使用Thread.CurrentPrincipal.Identity。
还请注意上面的Scott博客。如果您要更改其中之一,请确保它们是同步的。
https://stackoverflow.com/questions/34940862
复制相似问题