关于HttpContext.SignInAsync无效的问题

asp.net core身份验证中,为了测试用户登陆,直接用代码给赋值

执行完以上代码后紧接着执行

发现设置claims 并没有成功,于是断点跟踪到_httpContextAccessor.HttpContext.SignInAsync,确实HttpContext.User.Claims没有值,下载了微软的示例代码,发现必须执行一个完整的页面才可以,也就是说执行完登陆代码之后,在另外的页面获取HttpContext.User.Claims才可以获取到,比如我们设置一个cookies或者session,设置完成之后紧接着代码就可以获取到这个值,但是HttpContext不同,必须完成一个完整的请求之后,才可以获取到新的值,这可能跟HttpContext的机制有关系