ISessionStateItemCollection インターフェイス
アセンブリ: System.Web (system.web.dll 内)


ISessionStateItemCollection インターフェイスは、HttpSessionStateContainer クラスによってアプリケーション コードに公開されるセッション項目のコレクションを定義します。
ISessionStateItemCollection インターフェイスの ASP.NET の実装は、SessionStateItemCollection クラスです。
SessionStateStoreProviderBase クラスから派生するクラスを作成してセッション データを保存する場合は、SessionStateItemCollection クラスを使用して保存されているオブジェクトを管理するか、または各自のコレクション マネージャに ISessionStateItemCollection インターフェイスを実装します。
ISessionStateItemCollection インターフェイスを実装する場合は、ISessionStateItemCollection の実装を使用してセッション変数を管理するために SessionStateStoreProviderBase クラスを継承するクラスも作成する必要があります。
ISessionStateItemCollection の実装は、ICollection インターフェイスのメンバも実装する必要があります。

ISessionStateItemCollection を実装し、SortedList クラスを使用してセッション状態の変数名と値を保存するコード例を次に示します。
Imports System Imports System.Web Imports System.Web.SessionState Imports System.Collections Imports System.Collections.Specialized Namespace Samples.AspNet.Session Public Class MySessionStateItemCollection Implements ISessionStateItemCollection Private pItems As SortedList = New SortedList() Private pDirty As Boolean = False Public Property Dirty As Boolean Implements ISessionStateItemCollection.Dirty Get Return pDirty End Get Set pDirty = value End Set End Property Public Property Item(index As Integer) As Object Implements ISessionStateItemCollection.Item Get Return pItems(index) End Get Set pItems(index) = value pDirty = True End Set End Property Public Property Item(name As String) As Object Implements ISessionStateItemCollection.Item Get Return pItems(name) End Get Set pItems(name) = value pDirty = True End Set End Property Public ReadOnly Property Keys As NameObjectCollectionBase.KeysCollection _ Implements ISessionStateItemCollection.Keys Get Return CType(pItems.Keys, NameObjectCollectionBase.KeysCollection) End Get End Property Public ReadOnly Property Count As Integer Implements ICollection.Count Get Return pItems.Count End Get End Property Public ReadOnly Property SyncRoot As Object Implements ICollection.SyncRoot Get Return Me End Get End Property Public ReadOnly Property IsSynchronized As Boolean Implements ICollection.IsSynchronized Get Return False End Get End Property Public Function GetEnumerator() As IEnumerator Implements ICollection.GetEnumerator Return pItems.GetEnumerator() End Function Public Sub Clear() Implements ISessionStateItemCollection.Clear pItems.Clear() pDirty = True End Sub Public Sub Remove(name As String) Implements ISessionStateItemCollection.Remove pItems.Remove(name) pDirty = True End Sub Public Sub RemoveAt(index As Integer) Implements ISessionStateItemCollection.RemoveAt If index < 0 OrElse index >= Me.Count Then _ Throw New ArgumentOutOfRangeException("The specified index is not within the acceptable range.") pItems.RemoveAt(index) pDirty = True End Sub Public Sub CopyTo(array As Array, index As Integer) Implements ICollection.CopyTo pItems.CopyTo(array, index) End Sub End Class End Namespace
using System; using System.Web; using System.Web.SessionState; using System.Collections; using System.Collections.Specialized; namespace Samples.AspNet.Session { public class MySessionStateItemCollection : ISessionStateItemCollection { private SortedList pItems = new SortedList(); private bool pDirty = false; public bool Dirty { get { return pDirty; } set { pDirty = value; } } public object this[int index] { get { return pItems[index]; } set { pItems[index] = value; pDirty = true; } } public object this[string name] { get { return pItems[name]; } set { pItems[name] = value; pDirty = true; } } public NameObjectCollectionBase.KeysCollection Keys { get { return (NameObjectCollectionBase.KeysCollection)pItems.Keys; } } public int Count { get { return pItems.Count; } } public Object SyncRoot { get { return this; } } public bool IsSynchronized { get { return false; } } public IEnumerator GetEnumerator() { return pItems.GetEnumerator(); } public void Clear() { pItems.Clear(); pDirty = true; } public void Remove(string name) { pItems.Remove(name); pDirty = true; } public void RemoveAt(int index) { if (index < 0 || index >= this.Count) throw new ArgumentOutOfRangeException("The specified index is not within the acceptable range."); pItems.RemoveAt(index); pDirty = true; } public void CopyTo(Array array, int index) { pItems.CopyTo(array, index); } } }


Windows 98, Windows 2000 SP4, Windows Server 2003, Windows XP Media Center Edition, Windows XP Professional x64 Edition, Windows XP SP2, Windows XP Starter Edition
開発プラットフォームの中には、.NET Framework によってサポートされていないバージョンがあります。サポートされているバージョンについては、「システム要件」を参照してください。


ISessionStateItemCollection プロパティ

名前 | 説明 | |
---|---|---|
![]() | Dirty | コレクションが変更されたかどうかを示す値を取得または設定します。 |
![]() | Item | オーバーロードされます。 コレクション内の値を取得または設定します。 |
![]() | Keys | コレクションに保存されているすべての値の変数名の一覧を取得します。 |

ISessionStateItemCollection メソッド

名前 | 説明 | |
---|---|---|
![]() | Clear | セッション状態のコレクションからすべての値とキーを削除します。 |
![]() | Remove | コレクションから項目を削除します。 |
![]() | RemoveAt | コレクション内の指定したインデックス位置の項目を削除します。 |

ISessionStateItemCollection メンバ
ASP.NET セッション状態がセッションを管理するために使用するコレクションのコントラクトを定義します。
ISessionStateItemCollection データ型で公開されるメンバを以下の表に示します。

名前 | 説明 | |
---|---|---|
![]() | Dirty | コレクションが変更されたかどうかを示す値を取得または設定します。 |
![]() | Item | オーバーロードされます。 コレクション内の値を取得または設定します。 |
![]() | Keys | コレクションに保存されているすべての値の変数名の一覧を取得します。 |

名前 | 説明 | |
---|---|---|
![]() | Clear | セッション状態のコレクションからすべての値とキーを削除します。 |
![]() | Remove | コレクションから項目を削除します。 |
![]() | RemoveAt | コレクション内の指定したインデックス位置の項目を削除します。 |

Weblioに収録されているすべての辞書からISessionStateItemCollectionを検索する場合は、下記のリンクをクリックしてください。

- ISessionStateItemCollectionのページへのリンク