HttpFileCollection Класс
Определение
Важно!
Некоторые сведения относятся к предварительной версии продукта, в которую до выпуска могут быть внесены существенные изменения. Майкрософт не предоставляет никаких гарантий, явных или подразумеваемых, относительно приведенных здесь сведений.
Предоставляет доступ к файлам, отправленным клиентом, и упорядочивает их.
public ref class HttpFileCollection sealed : System::Collections::Specialized::NameObjectCollectionBase
public sealed class HttpFileCollection : System.Collections.Specialized.NameObjectCollectionBase
type HttpFileCollection = class
inherit NameObjectCollectionBase
Public NotInheritable Class HttpFileCollection
Inherits NameObjectCollectionBase
- Наследование
Примеры
В следующем примере показано, как получить доступ HttpFileCollection к коллекции, возвращаемой Files из свойства HttpRequest объекта. Коллекция HttpFileCollection заполняется двумя FileUpload элементами управления на веб-странице. Элементы в коллекции файлов отображаются в элементе BulletedList управления.
<%@ 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 Button1_Click(object sender, EventArgs e)
{
// Clear the BulletedList.
BulletedList1.Items.Clear();
// Check to see if at least one file was specified.
if (FileUpload1.HasFile | FileUpload2.HasFile)
{
Label1.Text = "The file collection consists of:";
// Get the HttpFileCollection.
HttpFileCollection hfc = Request.Files;
foreach (String h in hfc.AllKeys)
{
// Add an item to the BulletedList if a file
// was specified for the corresponding control.
if (hfc[h].ContentLength > 0)
BulletedList1.Items.Add(Server.HtmlEncode(hfc[h].FileName));
}
}
else
{
Label1.Text = "You did not specify any files to upload or " +
"the file(s) could not be found.";
}
}
</script>
<html xmlns="http://www.w3.org/1999/xhtml" >
<head runat="server">
<title>HttpFileCollection Example</title>
</head>
<body>
<form id="form1"
runat="server">
<div>
<asp:FileUpload ID="FileUpload1"
runat="server" />
<br />
<asp:FileUpload ID="FileUpload2"
runat="server" />
<br />
<asp:Button ID="Button1"
runat="server"
OnClick="Button1_Click"
Text="Upload" />
<br />
<asp:Label ID="Label1"
runat="server"/>
<br />
<asp:BulletedList ID="BulletedList1"
runat="server">
</asp:BulletedList>
</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 Button1_Click(ByVal sender As Object, ByVal e As System.EventArgs)
' Clear the BulletedList.
BulletedList1.Items.Clear()
' Check to see if at least one file was specified.
If (FileUpload1.HasFile Or FileUpload2.HasFile) Then
Label1.Text = "The file collection consists of:"
' Get the HttpFileCollection.
Dim hfc As HttpFileCollection = Request.Files
For Each h As String In hfc.AllKeys
' Add an item to the BulletedList if a file
' was specified for the corresponding control.
If (hfc(h).ContentLength > 0) Then
BulletedList1.Items.Add(Server.HtmlEncode(hfc(h).FileName))
End If
Next
Else
Label1.Text = "You did not specify any files to upload or " & _
"the file(s) could not be found."
End If
End Sub
</script>
<html xmlns="http://www.w3.org/1999/xhtml" >
<head id="Head1" runat="server">
<title>HttpFileCollection Example</title>
</head>
<body>
<form id="form1"
runat="server">
<div>
<asp:FileUpload ID="FileUpload1"
runat="server" />
<br />
<asp:FileUpload ID="FileUpload2"
runat="server" />
<br />
<asp:Button ID="Button1"
runat="server"
OnClick="Button1_Click"
Text="Upload" />
<br />
<asp:Label ID="Label1"
runat="server"/>
<br />
<asp:BulletedList ID="BulletedList1"
runat="server">
</asp:BulletedList>
</div>
</form>
</body>
</html>
Комментарии
Клиенты кодируют файлы и передают их в текст содержимого с помощью многокомпонентного формата MIME с заголовком multipart/form-data
HTTPContent-Type
. ASP.NET извлекает закодированные файлы из текста содержимого в отдельные члены объекта HttpFileCollection. Методы и свойства HttpPostedFile класса предоставляют доступ к содержимому и свойствам каждого файла.
Свойства
AllKeys |
Возвращает массив строк, содержащий ключи (имена) всех элементов коллекции файлов. |
Count |
Возвращает число пар "ключ-значение", содержащихся в экземпляре класса NameObjectCollectionBase. (Унаследовано от NameObjectCollectionBase) |
IsReadOnly |
Возвращает или задает значение, указывающее, является ли экземпляр класса NameObjectCollectionBase доступным только для чтения. (Унаследовано от NameObjectCollectionBase) |
Item[Int32] |
Получает объект с указанным числовым индексом из коллекции HttpFileCollection. |
Item[String] |
Получает объект с указанным именем из коллекции файлов. |
Keys |
Возвращает экземпляр NameObjectCollectionBase.KeysCollection, содержащий все ключи в экземпляре NameObjectCollectionBase. (Унаследовано от NameObjectCollectionBase) |
Методы
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) |
CopyTo(Array, Int32) |
Копирует элементы коллекции файлов в объект Array, начинающийся с указанного индекса массива. |
Equals(Object) |
Определяет, равен ли указанный объект текущему объекту. (Унаследовано от Object) |
Get(Int32) |
Возвращает объект HttpPostedFile с указанным числовым индексом из коллекции. |
Get(String) |
Возвращает объект HttpPostedFile с указанным именем из коллекции файлов. |
GetEnumerator() |
Возвращает перечислитель, осуществляющий перебор элементов списка NameObjectCollectionBase. (Унаследовано от NameObjectCollectionBase) |
GetHashCode() |
Служит хэш-функцией по умолчанию. (Унаследовано от Object) |
GetKey(Int32) |
Возвращает имя элемента HttpFileCollection с заданным числовым индексом. |
GetMultiple(String) |
Возвращает файлы, соответствующие указанному имени. |
GetObjectData(SerializationInfo, StreamingContext) |
Реализует интерфейс ISerializable и возвращает данные, необходимые для сериализации экземпляра класса NameObjectCollectionBase. (Унаследовано от NameObjectCollectionBase) |
GetType() |
Возвращает объект Type для текущего экземпляра. (Унаследовано от Object) |
MemberwiseClone() |
Создает неполную копию текущего объекта Object. (Унаследовано от Object) |
OnDeserialization(Object) |
Реализует интерфейс ISerializable и вызывает событие десериализации при завершении десериализации. (Унаследовано от NameObjectCollectionBase) |
ToString() |
Возвращает строку, представляющую текущий объект. (Унаследовано от Object) |
Явные реализации интерфейса
ICollection.CopyTo(Array, Int32) |
Копирует целый массив NameObjectCollectionBase в совместимый одномерный массив Array, начиная с заданного индекса целевого массива. (Унаследовано от NameObjectCollectionBase) |
ICollection.IsSynchronized |
Возвращает значение, указывающее на то, является ли доступ к объекту NameObjectCollectionBase синхронизированным (потокобезопасным). (Унаследовано от NameObjectCollectionBase) |
ICollection.SyncRoot |
Возвращает объект, который позволяет синхронизировать доступ к объекту NameObjectCollectionBase. (Унаследовано от NameObjectCollectionBase) |
Методы расширения
Cast<TResult>(IEnumerable) |
Приводит элементы объекта IEnumerable к заданному типу. |
OfType<TResult>(IEnumerable) |
Выполняет фильтрацию элементов объекта IEnumerable по заданному типу. |
AsParallel(IEnumerable) |
Позволяет осуществлять параллельный запрос. |
AsQueryable(IEnumerable) |
Преобразовывает коллекцию IEnumerable в объект IQueryable. |