我正在使用以下代码从Cookie中读取并使用if (expired != false)
检查用户是否已登录(请参阅下面的代码)。根据我使用if..else
隐藏/显示按钮。但我在这方面遇到了错误。我通过互联网搜索但没有找到合适的解决方案。
protected void Page_Load(object sender, EventArgs e)
{
HttpCookie authCookie = Request.Cookies[FormsAuthentication.FormsCookieName];
FormsAuthenticationTicket ticket = FormsAuthentication.Decrypt(authCookie.Value);
string cookiePath = ticket.CookiePath;
DateTime expiration = ticket.Expiration;
bool expired = ticket.Expired;
bool isPersistent = ticket.IsPersistent;
DateTime issueDate = ticket.IssueDate;
string name = ticket.Name;
string userData = ticket.UserData;
if (expired != false)
{
Button3.Visible = false;
Button2.Visible = true;
Button1.Visible = true;
}
else
{
Button3.Visible = true;
Button2.Visible = false;
Button1.Visible = false;
}
}
错误:对象引用未设置为对象的实例。
在线:FormsAuthenticationTicket ticket = FormsAuthentication.Decrypt(authCookie.Value);
您可能想知道的事情:asp .net c#中的网站,Visual Studio 2010终极版。
更新:
是的我知道它是NullReferenceException但我该如何处理它。
我试过了if(authCookie.Value==null)
,但没有用。