英語で読む

次の方法で共有


HttpCookieCollection クラス

定義

複数の HTTP Cookie をタイプ セーフな方法で操作できるようにします。

public sealed class HttpCookieCollection : System.Collections.Specialized.NameObjectCollectionBase
継承
HttpCookieCollection

次のコード例では、 オブジェクトの プロパティを使用して Cookie を読み取り、 Cookies オブジェクトの プロパティを HttpRequest 使用して Cookie を Cookies 書き込む方法を HttpResponse 示します。 どちらのプロパティも オブジェクトを返 HttpCookieCollection します。 という名前userNamelastVisitの 2 つの Cookie のいずれかが HTTP 要求に含まれていない場合は、HTTP 応答で作成されます。 2 つの Cookie が存在する場合は、Cookie のプロパティが表示されます。

<%@ Page Language="C#" %>

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

<script runat="server">

    protected void Page_Load(object sender, EventArgs e)
    {
        StringBuilder sb = new StringBuilder();
        // Check to see if cookies exist in HTTP request.
        if (Request.Cookies["userName"] == null && 
            Request.Cookies["lastVist"] == null)
        {
            Response.Cookies["userName"].Value = "user name";
            Response.Cookies["userName"].Expires = DateTime.Now.AddMinutes(20d);

            HttpCookie aCookie = new HttpCookie("lastVisit");
            aCookie.Value = DateTime.Now.ToString();
            aCookie.Expires = DateTime.Now.AddMinutes(20d);
            Response.Cookies.Add(aCookie);
            sb.Append("Two cookies added to response. " + 
                "Refresh the page to read the cookies.");
        }
        else
        {
            HttpCookieCollection cookies = Request.Cookies;
            for (int i = 0; i < cookies.Count; i++)
            {
                sb.Append("Name: " + cookies[i].Name + "<br/>");
                sb.Append("Value: " + cookies[i].Value + "<br/>");
                sb.Append("Expires: " + cookies[i].Expires.ToString() +
                          "<br/><br/>");
            }
        }
        Label1.Text = sb.ToString();
    }
</script>

<html xmlns="http://www.w3.org/1999/xhtml" >
<head runat="server">
    <title>HttpCookieCollection Example</title>
</head>
<body>
    <form id="form1" runat="server">
    <div>
      <asp:Label id="Label1" runat="server"></asp:Label>
    </div>
    </form>
</body>
</html>

コンストラクター

HttpCookieCollection()

HttpCookieCollection クラスの新しいインスタンスを初期化します。

プロパティ

AllKeys

クッキー コレクション内のすべてのキー (クッキー名) が含まれる文字列配列を取得します。

Count

NameObjectCollectionBase インスタンスに格納されているキーと値のペアの数を取得します。

(継承元 NameObjectCollectionBase)
IsReadOnly

NameObjectCollectionBase インスタンスが読み取り専用かどうかを示す値を取得または設定します。

(継承元 NameObjectCollectionBase)
Item[Int32]

指定された数値インデックスを持つクッキーをクッキー コレクションから取得します。

Item[String]

指定した名前のクッキーをクッキー コレクションから取得します。

Keys

NameObjectCollectionBase.KeysCollection インスタンスのすべてのキーを含んでいる NameObjectCollectionBase インスタンスを取得します。

(継承元 NameObjectCollectionBase)

メソッド

Add(HttpCookie)

指定したクッキーをクッキー コレクションに追加します。

BaseAdd(String, Object)

指定したキーと値を持つエントリを NameObjectCollectionBase インスタンスに追加します。

(継承元 NameObjectCollectionBase)
BaseClear()

NameObjectCollectionBase インスタンスからすべてのエントリを削除します。

(継承元 NameObjectCollectionBase)
BaseGet(Int32)

NameObjectCollectionBase インスタンスの指定したインデックスにあるエントリの値を取得します。

(継承元 NameObjectCollectionBase)
BaseGet(String)

NameObjectCollectionBase インスタンスから、指定したキーを持つ最初のエントリの値を取得します。

(継承元 NameObjectCollectionBase)
BaseGetAllKeys()

NameObjectCollectionBase インスタンス内のすべてのキーを格納する String 配列を返します。

(継承元 NameObjectCollectionBase)
BaseGetAllValues()

NameObjectCollectionBase インスタンス内のすべての値を格納する Object 配列を返します。

(継承元 NameObjectCollectionBase)
BaseGetAllValues(Type)

NameObjectCollectionBase インスタンス内のすべての値を格納する、指定した型の配列を返します。

(継承元 NameObjectCollectionBase)
BaseGetKey(Int32)

NameObjectCollectionBase インスタンスの指定したインデックスにあるエントリのキーを取得します。

(継承元 NameObjectCollectionBase)
BaseHasKeys()

NameObjectCollectionBase インスタンスが、キーが null ではないエントリを格納しているかどうかを示す値を取得します。

(継承元 NameObjectCollectionBase)
BaseRemove(String)

指定したキーを持つエントリを NameObjectCollectionBase インスタンスから削除します。

(継承元 NameObjectCollectionBase)
BaseRemoveAt(Int32)

NameObjectCollectionBase インスタンスの指定したインデックスにあるエントリを削除します。

(継承元 NameObjectCollectionBase)
BaseSet(Int32, Object)

NameObjectCollectionBase インスタンスの指定したインデックスにあるエントリの値を設定します。

(継承元 NameObjectCollectionBase)
BaseSet(String, Object)

NameObjectCollectionBase インスタンス内に指定したキーを持つエントリが存在する場合は、その最初のエントリの値を設定します。存在しない場合は、指定したキーと値を持つエントリを NameObjectCollectionBase インスタンスに追加します。

(継承元 NameObjectCollectionBase)
Clear()

クッキー コレクションからすべてのクッキーを削除します。

CopyTo(Array, Int32)

配列の指定したインデックスで始まる Array にクッキー コレクションのメンバーをコピーします。

Equals(Object)

指定されたオブジェクトが現在のオブジェクトと等しいかどうかを判断します。

(継承元 Object)
Get(Int32)

指定したインデックスの HttpCookie アイテムをクッキー コレクションから返します。

Get(String)

指定した名前のクッキーをクッキー コレクションから返します。

GetEnumerator()

NameObjectCollectionBase を反復処理する列挙子を返します。

(継承元 NameObjectCollectionBase)
GetHashCode()

既定のハッシュ関数として機能します。

(継承元 Object)
GetKey(Int32)

指定した数値インデックスのクッキーのキー (名前) を返します。

GetObjectData(SerializationInfo, StreamingContext)
古い.

ISerializable インターフェイスを実装し、NameObjectCollectionBase インスタンスをシリアル化するために必要なデータを返します。

(継承元 NameObjectCollectionBase)
GetType()

現在のインスタンスの Type を取得します。

(継承元 Object)
MemberwiseClone()

現在の Object の簡易コピーを作成します。

(継承元 Object)
OnDeserialization(Object)

ISerializable インターフェイスを実装し、逆シリアル化が完了したときに逆シリアル化イベントを発生させます。

(継承元 NameObjectCollectionBase)
Remove(String)

指定した名前のクッキーをクッキー コレクションから削除します。

Set(HttpCookie)

クッキー コレクション内の既存のクッキーの値を更新します。

ToString()

現在のオブジェクトを表す文字列を返します。

(継承元 Object)

明示的なインターフェイスの実装

ICollection.CopyTo(Array, Int32)

NameObjectCollectionBase 全体を互換性のある 1 次元の Array にコピーします。コピー操作は、コピー先の配列の指定したインデックスから始まります。

(継承元 NameObjectCollectionBase)
ICollection.IsSynchronized

NameObjectCollectionBase オブジェクトへのアクセスが同期されている (スレッド セーフである) かどうかを示す値を取得します。

(継承元 NameObjectCollectionBase)
ICollection.SyncRoot

NameObjectCollectionBase オブジェクトへのアクセスを同期するために使用できるオブジェクトを取得します。

(継承元 NameObjectCollectionBase)

拡張メソッド

Cast<TResult>(IEnumerable)

IEnumerable の要素を、指定した型にキャストします。

OfType<TResult>(IEnumerable)

指定された型に基づいて IEnumerable の要素をフィルター処理します。

AsParallel(IEnumerable)

クエリの並列化を有効にします。

AsQueryable(IEnumerable)

IEnumerableIQueryable に変換します。

適用対象

製品 バージョン
.NET Framework 1.1, 2.0, 3.0, 3.5, 4.0, 4.5, 4.5.1, 4.5.2, 4.6, 4.6.1, 4.6.2, 4.7, 4.7.1, 4.7.2, 4.8, 4.8.1

こちらもご覧ください