WebClient.UploadFile Metodo

Definizione

Carica un file locale su una risorsa con l'URI specificato.

Overload

UploadFile(String, String)

Carica il file locale specificato in una risorsa con l'URI specificato.

UploadFile(Uri, String)

Carica il file locale specificato in una risorsa con l'URI specificato.

UploadFile(String, String, String)

Carica il file locale specificato sulla risorsa specificata utilizzando il metodo specificato.

UploadFile(Uri, String, String)

Carica il file locale specificato sulla risorsa specificata utilizzando il metodo specificato.

UploadFile(String, String)

Source:
WebClient.cs
Source:
WebClient.cs
Source:
WebClient.cs

Carica il file locale specificato in una risorsa con l'URI specificato.

public:
 cli::array <System::Byte> ^ UploadFile(System::String ^ address, System::String ^ fileName);
public byte[] UploadFile (string address, string fileName);
member this.UploadFile : string * string -> byte[]
Public Function UploadFile (address As String, fileName As String) As Byte()

Parametri

address
String

L'URI della risorsa per ricevere il file. Ad esempio, ftp://localhost/samplefile.txt.

fileName
String

Il file da inviare alla risorsa. Ad esempio, "samplefile.txt".

Restituisce

Byte[]

Matrice Byte contenente il corpo della risposta dalla risorsa.

Eccezioni

Il valore del parametro address è null.

-oppure-

Il valore del parametro fileName è null.

L'URI composto dalla combinazione di BaseAddress e address non è valido.

-oppure-

fileName è null, è Empty, contiene caratteri non validi o non esiste.

-oppure-

Si è verificato un errore durante l'upload del file.

-oppure-

Nessuna risposta dal server che ospita la risorsa.

-oppure-

L'intestazione Content-type inizia con multipart.

Esempio

Nell'esempio di codice seguente il file specificato viene caricato nell'URI specificato usando UploadFile. Qualsiasi risposta restituita dal server viene visualizzata nella console.

Console::Write( "\nPlease enter the URI to post data to : " );
String^ uriString = Console::ReadLine();

// Create a new WebClient instance.
WebClient^ myWebClient = gcnew WebClient;
Console::WriteLine( "\nPlease enter the fully qualified path of the file to be uploaded to the URI" );
String^ fileName = Console::ReadLine();
Console::WriteLine( "Uploading {0} to {1} ...", fileName, uriString );

// Upload the file to the URI.
// The 'UploadFile(uriString, fileName)' method implicitly uses HTTP POST method.
array<Byte>^responseArray = myWebClient->UploadFile( uriString, fileName );

// Decode and display the response.
Console::WriteLine( "\nResponse Received::The contents of the file uploaded are: \n {0}", 
    System::Text::Encoding::ASCII->GetString( responseArray ) );
Console.Write("\nPlease enter the URI to post data to : ");
String uriString = Console.ReadLine();

// Create a new WebClient instance.
WebClient myWebClient = new WebClient();

Console.WriteLine("\nPlease enter the fully qualified path of the file to be uploaded to the URI");
string fileName = Console.ReadLine();
Console.WriteLine("Uploading {0} to {1} ...",fileName,uriString);

// Upload the file to the URI.
// The 'UploadFile(uriString,fileName)' method implicitly uses HTTP POST method.
byte[] responseArray = myWebClient.UploadFile(uriString,fileName);

// Decode and display the response.
Console.WriteLine("\nResponse Received. The contents of the file uploaded are:\n{0}", 
    System.Text.Encoding.ASCII.GetString(responseArray));

Console.Write(ControlChars.Cr + "Please enter the URI to post data to : ")
Dim uriString As String = Console.ReadLine()

' Create a new WebClient instance.
Dim myWebClient As New WebClient()

Console.WriteLine(ControlChars.Cr & _
    "Please enter the fully qualified path of the file to be uploaded to the URI")

Dim fileName As String = Console.ReadLine()
Console.WriteLine("Uploading {0} to {1} ...", fileName, uriString)

' Upload the file to the URI.
' The 'UploadFile(uriString,fileName)' method implicitly uses HTTP POST method. 
Dim responseArray As Byte() = myWebClient.UploadFile(uriString, fileName)

' Decode and display the response.
Console.WriteLine(ControlChars.Cr & "Response Received. The contents of the file uploaded are: " & _
    ControlChars.Cr & "{0}", System.Text.Encoding.ASCII.GetString(responseArray))

Nell'esempio di codice seguente viene illustrata una pagina di ASP.NET che può accettare file inviati ed è adatta per l'uso con il UploadFile metodo . La pagina deve risiedere in un server Web. L'indirizzo fornisce il valore per il address parametro del UploadFile metodo .

<%@ Import Namespace="System"%>
<%@ Import Namespace="System.IO"%>
<%@ Import Namespace="System.Net"%>
<%@ Import NameSpace="System.Web"%>

<Script language="C#" runat=server>
void Page_Load(object sender, EventArgs e) {
    
    foreach(string f in Request.Files.AllKeys) {
        HttpPostedFile file = Request.Files[f];
        file.SaveAs("c:\\inetpub\\test\\UploadedFiles\\" + file.FileName);
    }	
}

</Script>
<html>
<body>
<p> Upload complete.  </p>
</body>
</html>
<%@ Import Namespace="System"%>
<%@ Import Namespace="System.IO"%>
<%@ Import Namespace="System.Net"%>
<%@ Import NameSpace="System.Web"%>

<Script language="VB" runat=server>
    Sub Page_Load(ByVal sender As Object, ByVal e As EventArgs)
        
        Dim f As String
        Dim file
        For Each f In Request.Files.AllKeys
            file = Request.Files(f)
            file.SaveAs("c:\inetpub\test\UploadedFiles\" & file.FileName)
        Next f
        
    End Sub

</Script>
<html>
<body>
<p> Upload complete. </p>
</body>
</html>

Commenti

Il UploadFile metodo invia un file locale a una risorsa. Questo metodo usa il comando STOR per caricare una risorsa FTP. Per una risorsa HTTP, viene usato il metodo POST.

Questo metodo blocca durante il caricamento del file. Per continuare l'esecuzione durante l'attesa della risposta del server, usare uno dei UploadFileAsync metodi .

Il POST metodo è definito da HTTP. Se la richiesta sottostante non usa HTTP e POST non viene riconosciuta dal server, le classi di protocollo sottostanti determinano cosa accade. In genere, viene generata un'eccezione WebException con la Status proprietà impostata per indicare l'errore.

Se la BaseAddress proprietà non è una stringa vuota ("") e address non contiene un URI assoluto, address deve essere un URI relativo combinato con BaseAddress per formare l'URI assoluto dei dati richiesti. Se la QueryString proprietà non è una stringa vuota, viene aggiunta a address.

Nota

Questo membro genera informazioni di traccia quando viene abilitata la funzionalità di traccia di rete nell'applicazione in uso. Per altre informazioni, vedere Traccia di rete in .NET Framework.

Si applica a

UploadFile(Uri, String)

Source:
WebClient.cs
Source:
WebClient.cs
Source:
WebClient.cs

Carica il file locale specificato in una risorsa con l'URI specificato.

public:
 cli::array <System::Byte> ^ UploadFile(Uri ^ address, System::String ^ fileName);
public byte[] UploadFile (Uri address, string fileName);
member this.UploadFile : Uri * string -> byte[]
Public Function UploadFile (address As Uri, fileName As String) As Byte()

Parametri

address
Uri

L'URI della risorsa per ricevere il file. Ad esempio, ftp://localhost/samplefile.txt.

fileName
String

Il file da inviare alla risorsa. Ad esempio, "samplefile.txt".

Restituisce

Byte[]

Matrice Byte contenente il corpo della risposta dalla risorsa.

Eccezioni

Il valore del parametro address è null.

-oppure-

Il valore del parametro fileName è null.

L'URI composto dalla combinazione di BaseAddress e address non è valido.

-oppure-

fileName è null, è Empty, contiene caratteri non validi o non esiste.

-oppure-

Si è verificato un errore durante l'upload del file.

-oppure-

Nessuna risposta dal server che ospita la risorsa.

-oppure-

L'intestazione Content-type inizia con multipart.

Commenti

Il UploadFile metodo invia un file locale a una risorsa. Questo metodo usa il comando STOR per caricare una risorsa FTP. Per una risorsa HTTP, viene usato il metodo POST.

Questo metodo blocca durante il caricamento del file. Per continuare l'esecuzione durante l'attesa della risposta del server, usare uno dei UploadFileAsync metodi .

Il POST metodo è definito da HTTP. Se la richiesta sottostante non usa HTTP e POST non viene riconosciuta dal server, le classi di protocollo sottostanti determinano cosa accade. In genere, viene generata un'eccezione WebException con la Status proprietà impostata per indicare l'errore.

Se la BaseAddress proprietà non è una stringa vuota ("") e address non contiene un URI assoluto, address deve essere un URI relativo combinato con BaseAddress per formare l'URI assoluto dei dati richiesti. Se la QueryString proprietà non è una stringa vuota, viene aggiunta a address.

Nota

Questo membro genera informazioni di traccia quando viene abilitata la funzionalità di traccia di rete nell'applicazione in uso. Per altre informazioni, vedere Traccia di rete in .NET Framework.

Si applica a

UploadFile(String, String, String)

Source:
WebClient.cs
Source:
WebClient.cs
Source:
WebClient.cs

Carica il file locale specificato sulla risorsa specificata utilizzando il metodo specificato.

public:
 cli::array <System::Byte> ^ UploadFile(System::String ^ address, System::String ^ method, System::String ^ fileName);
public byte[] UploadFile (string address, string? method, string fileName);
public byte[] UploadFile (string address, string method, string fileName);
member this.UploadFile : string * string * string -> byte[]
Public Function UploadFile (address As String, method As String, fileName As String) As Byte()

Parametri

address
String

L'URI della risorsa per ricevere il file.

method
String

Il metodo utilizzato per inviare il file alla risorsa. Se null l'impostazione predefinita sarà POST per http e STOR per ftp.

fileName
String

Il file da inviare alla risorsa.

Restituisce

Byte[]

Matrice Byte contenente il corpo della risposta dalla risorsa.

Eccezioni

Il valore del parametro address è null.

-oppure-

Il valore del parametro fileName è null.

L'URI composto dalla combinazione di BaseAddress e address non è valido.

-oppure-

fileName è null, è Empty, contiene caratteri non validi o non esiste.

-oppure-

Si è verificato un errore durante l'upload del file.

-oppure-

Nessuna risposta dal server che ospita la risorsa.

-oppure-

L'intestazione Content-type inizia con multipart.

Esempio

Nell'esempio di codice seguente il file specificato viene caricato nell'URI specificato usando UploadFile. Qualsiasi risposta restituita dal server viene visualizzata nella console.

Console::Write( "\nPlease enter the URL to post data to : " );
String^ uriString = Console::ReadLine();

// Create a new WebClient instance.
WebClient^ myWebClient = gcnew WebClient;
Console::WriteLine
    ("\nPlease enter the fully qualified path of the file to be uploaded to the URL" );
String^ fileName = Console::ReadLine();
Console::WriteLine( "Uploading {0} to {1} ...", fileName, uriString );

// Upload the file to the URL using the HTTP 1.0 POST.
array<Byte>^responseArray = myWebClient->UploadFile( uriString, "POST", fileName );

// Decode and display the response.
Console::WriteLine( "\nResponse Received::The contents of the file uploaded are: \n {0}", 
    System::Text::Encoding::ASCII->GetString( responseArray ));
Console.Write("\nPlease enter the URL to post data to : ");
String uriString = Console.ReadLine();

// Create a new WebClient instance.
WebClient myWebClient = new WebClient();

Console.WriteLine("\nPlease enter the fully qualified path of the file to be uploaded to the URL");
string fileName = Console.ReadLine();

Console.WriteLine("Uploading {0} to {1} ...",fileName,uriString);						
// Upload the file to the URL using the HTTP 1.0 POST.
byte[] responseArray = myWebClient.UploadFile(uriString,"POST",fileName);

// Decode and display the response.
Console.WriteLine("\nResponse Received. The contents of the file uploaded are:\n{0}",
    System.Text.Encoding.ASCII.GetString(responseArray));


Console.Write(ControlChars.Cr + "Please enter the URL to post data to : ")
Dim uriString As String = Console.ReadLine()

' Create a new WebClient instance.
Dim myWebClient As New WebClient()
Console.WriteLine(ControlChars.Cr & _
    "Please enter the fully qualified path of the file to be uploaded to the URL")

Dim fileName As String = Console.ReadLine()
Console.WriteLine("Uploading {0} to {1} ...", fileName, uriString)

' Upload the file to the Url using the HTTP 1.0 POST.
Dim responseArray As Byte() = myWebClient.UploadFile(uriString, "POST", fileName)

' Decode and display the response.
Console.WriteLine(ControlChars.Cr + "Response Received. The contents of the file uploaded are: " & _
    ControlChars.Cr & "{0}", System.Text.Encoding.ASCII.GetString(responseArray))

Nell'esempio di codice seguente viene illustrata una pagina di ASP.NET che può accettare file inviati ed è adatta per l'uso con il UploadFile metodo . La pagina deve risiedere in un server Web. L'indirizzo fornisce il valore per il address parametro del UploadFile metodo .

<%@ Import Namespace="System"%>
<%@ Import Namespace="System.IO"%>
<%@ Import Namespace="System.Net"%>
<%@ Import NameSpace="System.Web"%>

<Script language="C#" runat=server>
void Page_Load(object sender, EventArgs e) {
    
    foreach(string f in Request.Files.AllKeys) {
        HttpPostedFile file = Request.Files[f];
        file.SaveAs("c:\\inetpub\\test\\UploadedFiles\\" + file.FileName);
    }	
}

</Script>
<html>
<body>
<p> Upload complete.  </p>
</body>
</html>
<%@ Import Namespace="System"%>
<%@ Import Namespace="System.IO"%>
<%@ Import Namespace="System.Net"%>
<%@ Import NameSpace="System.Web"%>

<Script language="VB" runat=server>
    Sub Page_Load(ByVal sender As Object, ByVal e As EventArgs)
        
        Dim f As String
        Dim file
        For Each f In Request.Files.AllKeys
            file = Request.Files(f)
            file.SaveAs("c:\inetpub\test\UploadedFiles\" & file.FileName)
        Next f
        
    End Sub

</Script>
<html>
<body>
<p> Upload complete. </p>
</body>
</html>

Commenti

Quando l'indirizzo specifica una risorsa HTTP, il metodo invia un file locale a una risorsa usando il UploadFile metodo HTTP specificato nel method parametro e restituisce qualsiasi risposta dal server. Questo metodo blocca durante il caricamento del file. Per continuare l'esecuzione durante l'attesa della risposta del server, usare uno dei UploadFileAsync metodi.

Se il method parametro specifica un verbo non compreso dal server o dalla address risorsa, le classi di protocollo sottostanti determinano cosa si verifica. In genere, viene generato un WebException oggetto con la proprietà impostata per indicare l'errore Status .

Se la BaseAddress proprietà non è una stringa vuota ("") e address non contiene un URI assoluto, address deve essere un URI relativo combinato con BaseAddress per formare l'URI assoluto dei dati richiesti. Se la QueryString proprietà non è una stringa vuota, viene aggiunta a address.

Nota

Questo membro genera informazioni di traccia quando viene abilitata la funzionalità di traccia di rete nell'applicazione in uso. Per altre informazioni, vedere Traccia di rete in .NET Framework.

Si applica a

UploadFile(Uri, String, String)

Source:
WebClient.cs
Source:
WebClient.cs
Source:
WebClient.cs

Carica il file locale specificato sulla risorsa specificata utilizzando il metodo specificato.

public:
 cli::array <System::Byte> ^ UploadFile(Uri ^ address, System::String ^ method, System::String ^ fileName);
public byte[] UploadFile (Uri address, string? method, string fileName);
public byte[] UploadFile (Uri address, string method, string fileName);
member this.UploadFile : Uri * string * string -> byte[]
Public Function UploadFile (address As Uri, method As String, fileName As String) As Byte()

Parametri

address
Uri

L'URI della risorsa per ricevere il file.

method
String

Il metodo utilizzato per inviare il file alla risorsa. Se null l'impostazione predefinita sarà POST per http e STOR per ftp.

fileName
String

Il file da inviare alla risorsa.

Restituisce

Byte[]

Matrice Byte contenente il corpo della risposta dalla risorsa.

Eccezioni

Il valore del parametro address è null.

-oppure-

Il valore del parametro fileName è null.

L'URI composto dalla combinazione di BaseAddress e address non è valido.

-oppure-

fileName è null, è Empty, contiene caratteri non validi o non esiste.

-oppure-

Si è verificato un errore durante l'upload del file.

-oppure-

Nessuna risposta dal server che ospita la risorsa.

-oppure-

L'intestazione Content-type inizia con multipart.

Commenti

Quando l'indirizzo specifica una risorsa HTTP, il metodo invia un file locale a una risorsa usando il UploadFile metodo HTTP specificato nel method parametro e restituisce qualsiasi risposta dal server. Questo metodo blocca durante il caricamento del file. Per continuare l'esecuzione durante l'attesa della risposta del server, usare uno dei UploadFileAsync metodi.

Se il method parametro specifica un verbo non compreso dal server o dalla address risorsa, le classi di protocollo sottostanti determinano cosa si verifica. In genere, viene generato un WebException oggetto con la proprietà impostata per indicare l'errore Status .

Se la BaseAddress proprietà non è una stringa vuota ("") e address non contiene un URI assoluto, address deve essere un URI relativo combinato con BaseAddress per formare l'URI assoluto dei dati richiesti. Se la QueryString proprietà non è una stringa vuota, viene aggiunta a address.

Nota

Questo membro genera informazioni di traccia quando viene abilitata la funzionalità di traccia di rete nell'applicazione in uso. Per altre informazioni, vedere Traccia di rete in .NET Framework.

Si applica a