2009-10-14 9 views
5

私はASP.NETとC#を使用しています。複数の値を持つASP.NETクッキー - どのように?

私は "TheCookie" と呼ばれるクッキー.............

TheCookieを読んで、その中に約3の値を持っている必要があります。クッキー1、クッキー2、クッキー3。

"TheCookie"内のCookie2の値を読み取るためにコードの値を取得するにはどうすればよいですか?

これは、クッキーが1つの値しか持たないときに私が読む方法ですが、クッキーに複数の値があるときに何をすべきか分かりません。VB.NETのコード

Dim userCookie As HttpCookie 
userCookie = Request.Cookies("UserEmail") 

ありがとうございます!

+0

、私は思います。クッキーは1つの値しか持つことができません。複数のCookieを設定したり、複数のプロパティを持つオブジェクトとして単一のCookieの値を設定したりできますか? – Sheff

答えて

12

あなたが

(C#の)

Response.Cookies["TheCookie"]["Cookie1"] = "Hello World"; 

(VB)

Response.Cookies("TheCookie")("Cookie1") = "Hello World" 

経由でそれらを設定し、その

(C#の)

string myValue = Request.Cookies["TheCookie"]["Cookie1"]; 
のようにそれらを読んで0

(VB)

Dim myValue As String 
myValue = Request.Cookies("TheCookie")("Cookie1") 
2
Request.Cookies.Get("TheCookie").Values.Get("Cookie1") 
Request.Cookies.Get("TheCookie").Values.Get("Cookie2") 
Request.Cookies.Get("TheCookie").Values.Get("Cookie3") 

C#の構文、申し訳ありません!

0

以下のように辞書オブジェクトのキー値のペアとして渡すことで保存できます。あなたはこのfurthurを説明する必要が

HttpCookie hc = new HttpCookie(cookieName); 
foreach (KeyValuePair<string, string> val in dic) 
{ 
    hc[val.Key] = val.Value; 
    } 
hc.Expires = DateTime.Now.Add(TimeSpan.FromHours(20000)); 
GetHttpResponse().Cookies.Add(hc); 

Example