0

我的登录页面中有以下 cookie:

       Response.Cookies("userInfo")("userName") = "s"
       Response.Cookies("userInfo")("lastVisit") = DateTime.Now.ToString()
       Response.Cookies("userInfo").Expires = DateTime.Now.AddDays(1)
       Response.Redirect("default.aspx")

这在我的 default.aspx 上:

       If Not Request.Cookies("userName") Is Nothing Then
           Label1.Text = Server.HtmlEncode(Request.Cookies("userName").Value)
       End If

       If Not Request.Cookies("userName") Is Nothing Then
           Dim aCookie As HttpCookie = Request.Cookies("userName")
           Label1.Text = Server.HtmlEncode(aCookie.Value)
       End If

但我需要:Response.Cookies("userInfo")("userName") = "s"成为:textboxUser 的值。如何才能做到这一点?

我试过了 :Response.Cookies("userInfo")("userName") = "textboxUser.Text"

但它只是显示,而不是用户。

另外,当我填写时:Response.Cookies("userInfo")("userName") = "s"它不会在默认页面上显示“s”但是:Label

有人可以为我指出一个好的方向吗?

4

1 回答 1

1

看起来您只是设置了一个名为 的 cookie userInfo,其中有一个名为 的项目userName。您应该检查userInfocookie 的存在,然后获取其中的项目,例如

Dim aCookie As HttpCookie = Request.Cookies("userInfo")

If aCookie IsNot Nothing Then
    Label1.Text = Server.HtmlEncode(aCookie("userName"))
End If

此外,在您仅显示此 cookie 的.Value地方,它将返回 cookie 中的所有键及其值,有点像查询字符串。

于 2013-05-07T14:56:27.747 回答