HttpFileCollection Classe
Definizione
Importante
Alcune informazioni sono relative alla release non definitiva del prodotto, che potrebbe subire modifiche significative prima della release definitiva. Microsoft non riconosce alcuna garanzia, espressa o implicita, in merito alle informazioni qui fornite.
Fornisce l'accesso e organizza i file caricati da un client.
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
- Ereditarietà
Esempio
Nell'esempio seguente viene illustrato come accedere all'insieme HttpFileCollection restituito dalla Files proprietà dell'oggetto HttpRequest . La HttpFileCollection raccolta viene popolata da due FileUpload controlli nella pagina Web. Gli elementi nella raccolta di file vengono visualizzati in un BulletedList controllo .
<%@ 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>
Commenti
I client codificano i file e li trasmettono nel corpo del contenuto usando il formato MIME multipart con un'intestazione HTTP Content-Type di multipart/form-data. ASP.NET estrae i file codificati dal corpo del contenuto in singoli membri di un oggetto HttpFileCollection. I metodi e le proprietà della HttpPostedFile classe forniscono l'accesso al contenuto e alle proprietà di ogni file.
Proprietà
| Nome | Descrizione |
|---|---|
| AllKeys |
Ottiene una matrice di stringhe contenente le chiavi (nomi) di tutti i membri nella raccolta di file. |
| Count |
Ottiene il numero di coppie chiave/valore contenute nell'istanza NameObjectCollectionBase di . (Ereditato da NameObjectCollectionBase) |
| IsReadOnly |
Ottiene o imposta un valore che indica se l'istanza NameObjectCollectionBase è di sola lettura. (Ereditato da NameObjectCollectionBase) |
| Item[Int32] |
Ottiene l'oggetto con l'indice numerico specificato dall'oggetto HttpFileCollection. |
| Item[String] |
Ottiene l'oggetto con il nome specificato dall'insieme di file. |
| Keys |
Ottiene un'istanza NameObjectCollectionBase.KeysCollection che contiene tutte le chiavi nell'istanza NameObjectCollectionBase di . (Ereditato da NameObjectCollectionBase) |
Metodi
| Nome | Descrizione |
|---|---|
| BaseAdd(String, Object) |
Aggiunge una voce con la chiave e il valore specificati nell'istanza NameObjectCollectionBase di . (Ereditato da NameObjectCollectionBase) |
| BaseClear() |
Rimuove tutte le voci dall'istanza NameObjectCollectionBase di . (Ereditato da NameObjectCollectionBase) |
| BaseGet(Int32) |
Ottiene il valore della voce in corrispondenza dell'indice specificato dell'istanza NameObjectCollectionBase . (Ereditato da NameObjectCollectionBase) |
| BaseGet(String) |
Ottiene il valore della prima voce con la chiave specificata dall'istanza NameObjectCollectionBase di . (Ereditato da NameObjectCollectionBase) |
| BaseGetAllKeys() |
Restituisce una String matrice che contiene tutte le chiavi nell'istanza NameObjectCollectionBase di . (Ereditato da NameObjectCollectionBase) |
| BaseGetAllValues() |
Restituisce una Object matrice che contiene tutti i valori nell'istanza NameObjectCollectionBase di . (Ereditato da NameObjectCollectionBase) |
| BaseGetAllValues(Type) |
Restituisce una matrice del tipo specificato che contiene tutti i valori nell'istanza NameObjectCollectionBase di . (Ereditato da NameObjectCollectionBase) |
| BaseGetKey(Int32) |
Ottiene la chiave della voce in corrispondenza dell'indice specificato dell'istanza NameObjectCollectionBase . (Ereditato da NameObjectCollectionBase) |
| BaseHasKeys() |
Ottiene un valore che indica se l'istanza NameObjectCollectionBase contiene voci le cui chiavi non |
| BaseRemove(String) |
Rimuove le voci con la chiave specificata dall'istanza NameObjectCollectionBase di . (Ereditato da NameObjectCollectionBase) |
| BaseRemoveAt(Int32) |
Rimuove la voce in corrispondenza dell'indice specificato dell'istanza NameObjectCollectionBase . (Ereditato da NameObjectCollectionBase) |
| BaseSet(Int32, Object) |
Imposta il valore della voce in corrispondenza dell'indice specificato dell'istanza NameObjectCollectionBase . (Ereditato da NameObjectCollectionBase) |
| BaseSet(String, Object) |
Imposta il valore della prima voce con la chiave specificata nell'istanza NameObjectCollectionBase , se presente; in caso contrario, aggiunge una voce con la chiave e il valore specificati nell'istanza NameObjectCollectionBase . (Ereditato da NameObjectCollectionBase) |
| CopyTo(Array, Int32) |
Copia i membri dell'insieme di file in un Array oggetto a partire dall'indice specificato della matrice. |
| Equals(Object) |
Determina se l'oggetto specificato è uguale all'oggetto corrente. (Ereditato da Object) |
| Get(Int32) |
Restituisce l'oggetto con l'indice HttpPostedFile numerico specificato dall'insieme di file. |
| Get(String) |
Restituisce l'oggetto HttpPostedFile con il nome specificato dall'insieme di file. |
| GetEnumerator() |
Restituisce un enumeratore che scorre l'oggetto NameObjectCollectionBase. (Ereditato da NameObjectCollectionBase) |
| GetHashCode() |
Funge da funzione hash predefinita. (Ereditato da Object) |
| GetKey(Int32) |
Restituisce il nome del HttpFileCollection membro con l'indice numerico specificato. |
| GetMultiple(String) |
Restituisce tutti i file che corrispondono al nome specificato. |
| GetObjectData(SerializationInfo, StreamingContext) |
Obsoleti.
Implementa l'interfaccia ISerializable e restituisce i dati necessari per serializzare l'istanza NameObjectCollectionBase . (Ereditato da NameObjectCollectionBase) |
| GetType() |
Ottiene il Type dell'istanza corrente. (Ereditato da Object) |
| MemberwiseClone() |
Crea una copia superficiale del Objectcorrente. (Ereditato da Object) |
| OnDeserialization(Object) |
Implementa l'interfaccia ISerializable e genera l'evento di deserializzazione al termine della deserializzazione. (Ereditato da NameObjectCollectionBase) |
| ToString() |
Restituisce una stringa che rappresenta l'oggetto corrente. (Ereditato da Object) |
Implementazioni dell'interfaccia esplicita
| Nome | Descrizione |
|---|---|
| ICollection.CopyTo(Array, Int32) |
Copia l'intero NameObjectCollectionBase oggetto in un oggetto unidimensionale Arraycompatibile, a partire dall'indice specificato della matrice di destinazione. (Ereditato da NameObjectCollectionBase) |
| ICollection.IsSynchronized |
Ottiene un valore che indica se l'accesso all'oggetto NameObjectCollectionBase è sincronizzato (thread-safe). (Ereditato da NameObjectCollectionBase) |
| ICollection.SyncRoot |
Ottiene un oggetto che può essere utilizzato per sincronizzare l'accesso all'oggetto NameObjectCollectionBase . (Ereditato da NameObjectCollectionBase) |
Metodi di estensione
| Nome | Descrizione |
|---|---|
| AsParallel(IEnumerable) |
Abilita la parallelizzazione di una query. |
| AsQueryable(IEnumerable) |
Converte un IEnumerable in un IQueryable. |
| Cast<TResult>(IEnumerable) |
Esegue il cast degli elementi di un IEnumerable al tipo specificato. |
| OfType<TResult>(IEnumerable) |
Filtra gli elementi di un IEnumerable in base a un tipo specificato. |