我在 ASP.NET 中有一个使用表单身份验证的应用程序。它有以下代码。
if (User.Identity.IsAuthenticated)
ViewStateUserKey = User.Identity.Name;
单步执行我看到此代码在每个页面加载时执行。当登录用户请求该页面时,ViewStateUserKey 将填写他们的用户名。如果您让页面等待表单身份验证超时,则用户不再登录,并且由于名称现在为空,因此在验证视图状态时回发失败。但是我注意到,如果我在屏幕上放置其他按钮,然后发回,它不会失败,即使在身份验证超时后也是如此。每次超时都应该出现这个错误吗?