除了使用系統預設的Cookies 對象外,我們也可以自行定義屬于自己的Cookies 對象。我們知道Cookie 對象是屬于CookieCollection 集合對象中的成員,所以我們可以自行在程序中宣告并使用這些對象;這樣的好處可以避免和一些系統所自動產生的Cookie 變量混雜。下列范例以上述范例為基礎,改為自定的Cookies 對象來操作Cookie 變量:
<Html>
<Script Language="VB" Runat="Server">
Sub Page_Load(Sender As Object,e As Eventargs)
Dim CookieCollection As HttpCookieCollection=New HttpCookieCollection
Dim Cookie1 As HttpCookie=New HttpCookie("Cookie1")
Dim Cookie2 As HttpCookie=New HttpCookie("Cookie2")
Cookie1.Value="Microsoft VisualStudio .NET"
Cookie2.Value="ASP.NET"
CookieCollection.Add(Cookie1) '將Cookie 對象加入Cookies 集合中
CookieCollection.Add(Cookie2)
Dim shtI As Short
For shtI=0 To CookieCollection.Count-1
Response.Write("變量名稱=" & CookieCollection.Item(shtI).Name &
"<br>")
Response.Write("變量內容=" & CookieCollection.Get(shtI).Value &
"<p>")
Next
CookieCollection.Clear()
End Sub
</Script>
</Html>
上述范例中分別產生一個HttpCookieCollection 對象以及兩個HttpCookie 對象。當我們在產生HttpCookie 對象時至少要將Name 屬性設定好,或者以下列的語法產生:
變量=New HttpCookie("Cookie 名稱","數據")
當設產生Cookie1 及Cookie2 這兩個變量后,我們就可以使用CookieCollection 對象的Add 方法將Cookie 對象加入集合中;接著在循環中分別讀出他們的變量名稱及內容。我們觀察執行結果,發現系統Cookie 變量AspSessionId 就沒有出現在我們所自訂的Cookies 集合對象中了。