HttpCookieCollection Класс
Определение
Важно!
Некоторые сведения относятся к предварительной версии продукта, в которую до выпуска могут быть внесены существенные изменения. Майкрософт не предоставляет никаких гарантий, явных или подразумеваемых, относительно приведенных здесь сведений.
Предоставляет типобезопасный способ управления файлами cookie HTTP.
public ref class HttpCookieCollection sealed : System::Collections::Specialized::NameObjectCollectionBase
public sealed class HttpCookieCollection : System.Collections.Specialized.NameObjectCollectionBase
type HttpCookieCollection = class
inherit NameObjectCollectionBase
Public NotInheritable Class HttpCookieCollection
Inherits NameObjectCollectionBase
- Наследование
Примеры
В следующем примере кода показано, как считывать файлы cookie с помощью Cookies свойства HttpRequest объекта и записывать файлы cookie с помощью Cookies свойства HttpResponse объекта. Оба свойства возвращают HttpCookieCollection объекты. Если одно из двух файлов cookie с именем userName и lastVisit не находятся в HTTP-запросе, они создаются в ответе HTTP. Если существуют два файла 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>
<%@ Page Language="VB" %>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<script runat="server">
Protected Sub Page_Load(ByVal sender As Object, ByVal e As System.EventArgs)
Dim sb As New StringBuilder()
' Check to see if cookies exist in HTTP request.
If (Request.Cookies("userName") Is Nothing AndAlso _
Request.Cookies("lastVisit") Is Nothing) Then
Response.Cookies("userName").Value = "user name"
Response.Cookies("userName").Expires = DateTime.Now.AddMinutes(20D)
Dim aCookie As 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
Dim cookies As HttpCookieCollection
cookies = Request.Cookies
For i As Integer = 0 To cookies.Count - 1
sb.Append("Name: " & cookies(i).Name & "<br/>")
sb.Append("Value: " & cookies(i).Value & "<br/>")
sb.Append("Expires: " & cookies(i).Expires.ToString() & _
"<br/><br/>")
Next
End If
Label1.Text = sb.ToString()
End Sub
</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 |
Возвращает строковый массив, содержащий все ключи (имена файлов cookie) в коллекции файлов cookie. |
| Count |
Возвращает количество пар "ключ-значение", содержащихся в экземпляре NameObjectCollectionBase . (Унаследовано от NameObjectCollectionBase) |
| IsReadOnly |
Возвращает или задает значение, указывающее, доступен ли NameObjectCollectionBase экземпляр только для чтения. (Унаследовано от NameObjectCollectionBase) |
| Item[Int32] |
Возвращает файл cookie с указанным числовым индексом из коллекции файлов cookie. |
| Item[String] |
Возвращает файл cookie с указанным именем из коллекции файлов cookie. |
| Keys |
NameObjectCollectionBase.KeysCollection Возвращает экземпляр, содержащий все ключи в экземпляреNameObjectCollectionBase. (Унаследовано от NameObjectCollectionBase) |
Методы
| Имя | Описание |
|---|---|
| Add(HttpCookie) |
Добавляет указанный файл cookie в коллекцию файлов cookie. |
| BaseAdd(String, Object) |
Добавляет запись с указанным ключом и значением в NameObjectCollectionBase экземпляр. (Унаследовано от NameObjectCollectionBase) |
| BaseClear() |
Удаляет все записи из экземпляра NameObjectCollectionBase . (Унаследовано от NameObjectCollectionBase) |
| BaseGet(Int32) |
Возвращает значение записи по указанному индексу экземпляра NameObjectCollectionBase . (Унаследовано от NameObjectCollectionBase) |
| BaseGet(String) |
Возвращает значение первой записи с указанным ключом из экземпляра NameObjectCollectionBase . (Унаследовано от NameObjectCollectionBase) |
| BaseGetAllKeys() |
String Возвращает массив, содержащий все ключи в экземпляреNameObjectCollectionBase. (Унаследовано от NameObjectCollectionBase) |
| BaseGetAllValues() |
Object Возвращает массив, содержащий все значения в экземпляреNameObjectCollectionBase. (Унаследовано от NameObjectCollectionBase) |
| BaseGetAllValues(Type) |
Возвращает массив указанного типа, содержащий все значения в экземпляре NameObjectCollectionBase . (Унаследовано от NameObjectCollectionBase) |
| BaseGetKey(Int32) |
Возвращает ключ записи по указанному индексу экземпляра NameObjectCollectionBase . (Унаследовано от NameObjectCollectionBase) |
| BaseHasKeys() |
Возвращает значение, указывающее, содержит ли NameObjectCollectionBase экземпляр записи, ключи которых не |
| BaseRemove(String) |
Удаляет записи с указанным ключом из экземпляра NameObjectCollectionBase . (Унаследовано от NameObjectCollectionBase) |
| BaseRemoveAt(Int32) |
Удаляет запись по указанному индексу экземпляра NameObjectCollectionBase . (Унаследовано от NameObjectCollectionBase) |
| BaseSet(Int32, Object) |
Задает значение записи по указанному индексу экземпляра NameObjectCollectionBase . (Унаследовано от NameObjectCollectionBase) |
| BaseSet(String, Object) |
Задает значение первой записи с указанным ключом в экземпляре NameObjectCollectionBase , если оно найдено; в противном случае добавляет запись с указанным ключом и значением в NameObjectCollectionBase экземпляр. (Унаследовано от NameObjectCollectionBase) |
| Clear() |
Удаляет все файлы cookie из коллекции файлов cookie. |
| CopyTo(Array, Int32) |
Копирует элементы коллекции Array файлов cookie в начало с указанного индекса массива. |
| Equals(Object) |
Определяет, равен ли указанный объект текущему объекту. (Унаследовано от Object) |
| Get(Int32) |
HttpCookie Возвращает элемент с указанным индексом из коллекции файлов cookie. |
| Get(String) |
Возвращает файл cookie с указанным именем из коллекции файлов cookie. |
| GetEnumerator() |
Возвращает перечислитель, который выполняет итерацию через NameObjectCollectionBase. (Унаследовано от NameObjectCollectionBase) |
| GetHashCode() |
Служит хэш-функцией по умолчанию. (Унаследовано от Object) |
| GetKey(Int32) |
Возвращает ключ (имя) файла cookie в указанном числовом индексе. |
| GetObjectData(SerializationInfo, StreamingContext) |
Устаревшие..
ISerializable Реализует интерфейс и возвращает данные, необходимые для сериализации экземпляраNameObjectCollectionBase. (Унаследовано от NameObjectCollectionBase) |
| GetType() |
Возвращает Type текущего экземпляра. (Унаследовано от Object) |
| MemberwiseClone() |
Создает неглубокую копию текущей Object. (Унаследовано от Object) |
| OnDeserialization(Object) |
ISerializable Реализует интерфейс и вызывает событие десериализации после завершения десериализации. (Унаследовано от NameObjectCollectionBase) |
| Remove(String) |
Удаляет файл cookie с указанным именем из коллекции. |
| Set(HttpCookie) |
Обновляет значение существующего файла cookie в коллекции файлов cookie. |
| ToString() |
Возвращает строку, представляющую текущий объект. (Унаследовано от Object) |
Явные реализации интерфейса
| Имя | Описание |
|---|---|
| ICollection.CopyTo(Array, Int32) |
Копирует все NameObjectCollectionBase в совместимое одномерное Arrayзначение, начиная с указанного индекса целевого массива. (Унаследовано от NameObjectCollectionBase) |
| ICollection.IsSynchronized |
Возвращает значение, указывающее, синхронизирован ли доступ к NameObjectCollectionBase объекту (потокобезопасный). (Унаследовано от NameObjectCollectionBase) |
| ICollection.SyncRoot |
Возвращает объект, который можно использовать для синхронизации доступа к объекту NameObjectCollectionBase . (Унаследовано от NameObjectCollectionBase) |
Методы расширения
| Имя | Описание |
|---|---|
| AsParallel(IEnumerable) |
Включает параллелизацию запроса. |
| AsQueryable(IEnumerable) |
Преобразует IEnumerable в IQueryable. |
| Cast<TResult>(IEnumerable) |
Приведение элементов IEnumerable к указанному типу. |
| OfType<TResult>(IEnumerable) |
Фильтрует элементы IEnumerable на основе указанного типа. |