Asp.net Page.User.Identity.IsAuthenticated返回未设置为对象实例的对象引用

Asp.net Page.User.Identity.IsAuthenticated返回未设置为对象实例的对象引用,asp.net,authentication,nullreferenceexception,Asp.net,Authentication,Nullreferenceexception,这在我的本地站点上运行良好,但一旦我将站点上载到live server,我就会得到stem.NullReferenceException:Object reference未设置为对象的实例 在第一行: if (!Page.User.Identity.IsAuthenticated) { pnlSignIn.Visible = true; pnlSignOut.Visible = false; } 您应该使用Request.IsAuthenticated而不是Page.User.

这在我的本地站点上运行良好,但一旦我将站点上载到live server,我就会得到stem.NullReferenceException:Object reference未设置为对象的实例

在第一行:

if (!Page.User.Identity.IsAuthenticated)
{
    pnlSignIn.Visible = true;
    pnlSignOut.Visible = false;
}

您应该使用
Request.IsAuthenticated
而不是
Page.User.Identity.IsAuthenticated


内部
请求。IsAuthenticated
将验证用户及其身份是否已设置(非空)。您也可以在代码中执行同样的操作,但何必麻烦呢。

是否可以附加调试器,然后将鼠标悬停在该变量的各个部分上,以查看什么是空的?例如,检查页面是否为空,然后检查用户是否为空,然后检查标识是否为空。另一个问题:在web.config中是否有用于etc的部分?您能编辑您的问题并包括web.config的该部分吗?检查IIS身份验证是否相同且正确。它可以是的副本