簡體   English   中英

c#靜態類中處理cookie的問題

[英]issues in c# static class to deal with cookies

我想創建一個靜態類來處理我的 ASP.NET 站點中的 cookie。 該類是用 c# 編寫的,位於 App_code 文件夾中。

我遇到的問題是,cookie 中的更新一直會刪除我在 cookie 中的先前值,並且沒有被添加。 我創建了一個簡單的代碼。

在此處輸入圖片說明

起初,cookie 的值為 1=a ,這很好(正確)。 但是在第二次運行中,當我輸入 if 而不是 else 時,cookie 值為 2=b。

在此處輸入圖片說明

我想要的結果是 1=a&2=b

謝謝

讓我試着解釋一下發生了什么。 當您像這樣設置 cookie 集合 "test2" 的值時HttpContext.Current.Response.Cookies["test2"].Values.Add("1", "a"); 您正在發送一個新的 cookie 集合對象作為新 HTTP 響應流的一部分。 新的 HTTP Response 對象不知道之前設置的 Name/Value cookie 項(現在可以通過 HTTP 的 Request 對象訪問)。 要解決此問題,只需將請求對象中的 cookie 添加到 Response 對象中的新 cookie 集合中。



    if (Request.Cookies["stackoverflow"] != null)
    {               
        Response.Cookies["stackoverflow"].Values.Add(Request.Cookies["stackoverflow"].Values);
        Response.Cookies["stackoverflow"].Values.Add("2", "bbbb");
    }
    else
    {
        Response.Cookies["stackoverflow"]["1"] = "aaaaaa";
    }

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM