Compartir por


HttpFileCollection Clase

Definición

Proporciona acceso y organiza los archivos cargados por un cliente.

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
Herencia
HttpFileCollection

Ejemplos

En el ejemplo siguiente se muestra cómo obtener acceso a la HttpFileCollection colección devuelta desde la Files propiedad del HttpRequest objeto . La HttpFileCollection colección se rellena mediante dos FileUpload controles en la página web. Los elementos de la colección de archivos se muestran en un BulletedList control .

<%@ 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>

Comentarios

Los clientes codifican archivos y los transmiten en el cuerpo del contenido mediante el formato MIME de varias partes con un encabezado HTTP Content-Type de multipart/form-data. ASP.NET extrae los archivos codificados del cuerpo del contenido en miembros individuales de .HttpFileCollection Los métodos y propiedades de la HttpPostedFile clase proporcionan acceso al contenido y las propiedades de cada archivo.

Propiedades

Nombre Description
AllKeys

Obtiene una matriz de cadenas que contiene las claves (nombres) de todos los miembros de la colección de archivos.

Count

Obtiene el número de pares clave-valor contenidos en la NameObjectCollectionBase instancia.

(Heredado de NameObjectCollectionBase)
IsReadOnly

Obtiene o establece un valor que indica si la NameObjectCollectionBase instancia es de solo lectura.

(Heredado de NameObjectCollectionBase)
Item[Int32]

Obtiene el objeto con el índice numérico especificado de .HttpFileCollection

Item[String]

Obtiene el objeto con el nombre especificado de la colección de archivos.

Keys

Obtiene una NameObjectCollectionBase.KeysCollection instancia que contiene todas las claves de la NameObjectCollectionBase instancia.

(Heredado de NameObjectCollectionBase)

Métodos

Nombre Description
BaseAdd(String, Object)

Agrega una entrada con la clave y el valor especificados en la NameObjectCollectionBase instancia.

(Heredado de NameObjectCollectionBase)
BaseClear()

Quita todas las entradas de la NameObjectCollectionBase instancia.

(Heredado de NameObjectCollectionBase)
BaseGet(Int32)

Obtiene el valor de la entrada en el índice especificado de la NameObjectCollectionBase instancia.

(Heredado de NameObjectCollectionBase)
BaseGet(String)

Obtiene el valor de la primera entrada con la clave especificada de la NameObjectCollectionBase instancia.

(Heredado de NameObjectCollectionBase)
BaseGetAllKeys()

Devuelve una String matriz que contiene todas las claves de la NameObjectCollectionBase instancia.

(Heredado de NameObjectCollectionBase)
BaseGetAllValues()

Devuelve una Object matriz que contiene todos los valores de la NameObjectCollectionBase instancia.

(Heredado de NameObjectCollectionBase)
BaseGetAllValues(Type)

Devuelve una matriz del tipo especificado que contiene todos los valores de la NameObjectCollectionBase instancia.

(Heredado de NameObjectCollectionBase)
BaseGetKey(Int32)

Obtiene la clave de la entrada en el índice especificado de la NameObjectCollectionBase instancia.

(Heredado de NameObjectCollectionBase)
BaseHasKeys()

Obtiene un valor que indica si la NameObjectCollectionBase instancia contiene entradas cuyas claves no nullson .

(Heredado de NameObjectCollectionBase)
BaseRemove(String)

Quita las entradas con la clave especificada de la NameObjectCollectionBase instancia.

(Heredado de NameObjectCollectionBase)
BaseRemoveAt(Int32)

Quita la entrada en el índice especificado de la NameObjectCollectionBase instancia.

(Heredado de NameObjectCollectionBase)
BaseSet(Int32, Object)

Establece el valor de la entrada en el índice especificado de la NameObjectCollectionBase instancia.

(Heredado de NameObjectCollectionBase)
BaseSet(String, Object)

Establece el valor de la primera entrada con la clave especificada en la NameObjectCollectionBase instancia, si se encuentra; de lo contrario, agrega una entrada con la clave y el valor especificados en la NameObjectCollectionBase instancia.

(Heredado de NameObjectCollectionBase)
CopyTo(Array, Int32)

Copia los miembros de la colección de archivos en un Array principio en el índice especificado de la matriz.

Equals(Object)

Determina si el objeto especificado es igual al objeto actual.

(Heredado de Object)
Get(Int32)

Devuelve el HttpPostedFile objeto con el índice numérico especificado de la colección de archivos.

Get(String)

Devuelve el HttpPostedFile objeto con el nombre especificado de la colección de archivos.

GetEnumerator()

Devuelve un enumerador que recorre en iteración .NameObjectCollectionBase

(Heredado de NameObjectCollectionBase)
GetHashCode()

Actúa como función hash predeterminada.

(Heredado de Object)
GetKey(Int32)

Devuelve el nombre del HttpFileCollection miembro con el índice numérico especificado.

GetMultiple(String)

Devuelve todos los archivos que coinciden con el nombre especificado.

GetObjectData(SerializationInfo, StreamingContext)
Obsoletos.

Implementa la ISerializable interfaz y devuelve los datos necesarios para serializar la NameObjectCollectionBase instancia.

(Heredado de NameObjectCollectionBase)
GetType()

Obtiene el Type de la instancia actual.

(Heredado de Object)
MemberwiseClone()

Crea una copia superficial del Objectactual.

(Heredado de Object)
OnDeserialization(Object)

Implementa la ISerializable interfaz y genera el evento de deserialización cuando se completa la deserialización.

(Heredado de NameObjectCollectionBase)
ToString()

Devuelve una cadena que representa el objeto actual.

(Heredado de Object)

Implementaciones de interfaz explícitas

Nombre Description
ICollection.CopyTo(Array, Int32)

Copia todo en NameObjectCollectionBase una unidimensional Arraycompatible, empezando por el índice especificado de la matriz de destino.

(Heredado de NameObjectCollectionBase)
ICollection.IsSynchronized

Obtiene un valor que indica si el NameObjectCollectionBase acceso al objeto está sincronizado (seguro para subprocesos).

(Heredado de NameObjectCollectionBase)
ICollection.SyncRoot

Obtiene un objeto que se puede usar para sincronizar el acceso al NameObjectCollectionBase objeto .

(Heredado de NameObjectCollectionBase)

Métodos de extensión

Nombre Description
AsParallel(IEnumerable)

Habilita la paralelización de una consulta.

AsQueryable(IEnumerable)

Convierte un IEnumerable en un IQueryable.

Cast<TResult>(IEnumerable)

Convierte los elementos de un IEnumerable al tipo especificado.

OfType<TResult>(IEnumerable)

Filtra los elementos de un IEnumerable en función de un tipo especificado.

Se aplica a

Consulte también