Sdílet prostřednictvím


WebClient.UploadValues Metoda

Definice

Nahraje kolekci name/value do prostředku se zadaným identifikátorem URI.

Přetížení

UploadValues(String, NameValueCollection)

Nahraje zadanou kolekci názvů a hodnot do prostředku identifikovaného zadaným identifikátorem URI.

UploadValues(Uri, NameValueCollection)

Nahraje zadanou kolekci názvů a hodnot do prostředku identifikovaného zadaným identifikátorem URI.

UploadValues(String, String, NameValueCollection)

Nahraje zadanou kolekci name/value do prostředku identifikovaného zadaným identifikátorem URI pomocí zadané metody.

UploadValues(Uri, String, NameValueCollection)

Nahraje zadanou kolekci name/value do prostředku identifikovaného zadaným identifikátorem URI pomocí zadané metody.

UploadValues(String, NameValueCollection)

Zdroj:
WebClient.cs
Zdroj:
WebClient.cs
Zdroj:
WebClient.cs

Nahraje zadanou kolekci názvů a hodnot do prostředku identifikovaného zadaným identifikátorem URI.

public:
 cli::array <System::Byte> ^ UploadValues(System::String ^ address, System::Collections::Specialized::NameValueCollection ^ data);
public byte[] UploadValues (string address, System.Collections.Specialized.NameValueCollection data);
member this.UploadValues : string * System.Collections.Specialized.NameValueCollection -> byte[]
Public Function UploadValues (address As String, data As NameValueCollection) As Byte()

Parametry

address
String

Identifikátor URI prostředku pro příjem kolekce.

data
NameValueCollection

NameValueCollection odeslat do prostředku.

Návraty

Byte[]

Pole Byte obsahující tělo odpovědi z prostředku.

Výjimky

Parametr address je null.

-nebo-

Parametr data je null.

Identifikátor URI vytvořený kombinací BaseAddressa address je neplatný.

-nebo-

data je null.

-nebo-

Ze serveru, který je hostitelem prostředku, nebyla žádná odpověď.

-nebo-

Při otevírání datového proudu došlo k chybě.

-nebo-

Hlavička Content-type není null ani application/x-www-form-urlencoded.

Příklady

Následující příklad kódu shromažďuje informace od uživatele (jméno, věk a adresa) a publikuje hodnoty na server pomocí UploadValues. V konzole se zobrazí jakákoli odpověď ze serveru.

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

// Create a new WebClient instance.
WebClient^ myWebClient = gcnew WebClient;

// Create a new NameValueCollection instance to hold some custom parameters to be posted to the URL.
NameValueCollection^ myNameValueCollection = gcnew NameValueCollection;

Console::WriteLine( "Please enter the following parameters to be posted to the URL" );
Console::Write( "Name: " );
String^ name = Console::ReadLine();

Console::Write( "Age: " );
String^ age = Console::ReadLine();

Console::Write( "Address: " );
String^ address = Console::ReadLine();

// Add necessary parameter/value pairs to the name/value container.
myNameValueCollection->Add( "Name", name );
myNameValueCollection->Add( "Address", address );
myNameValueCollection->Add( "Age", age );

Console::WriteLine( "\nUploading to {0} ...", uriString );
// 'The Upload(String, NameValueCollection)' implicitly method sets HTTP POST as the request method.
array<Byte>^ responseArray = myWebClient->UploadValues( uriString, myNameValueCollection );

// Decode and display the response.
Console::WriteLine( "\nResponse received was :\n {0}", 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();

// Create a new NameValueCollection instance to hold some custom parameters to be posted to the URL.
NameValueCollection myNameValueCollection = new NameValueCollection();

Console.WriteLine("Please enter the following parameters to be posted to the URL");
Console.Write("Name:");
string name = Console.ReadLine();

Console.Write("Age:");
string age = Console.ReadLine();

Console.Write("Address:");
string address = Console.ReadLine();

// Add necessary parameter/value pairs to the name/value container.
myNameValueCollection.Add("Name",name);            
myNameValueCollection.Add("Address",address);
myNameValueCollection.Add("Age",age);

Console.WriteLine("\nUploading to {0} ...",  uriString);
// 'The Upload(String,NameValueCollection)' implicitly method sets HTTP POST as the request method.            
byte[] responseArray = myWebClient.UploadValues(uriString,myNameValueCollection);

// Decode and display the response.
Console.WriteLine("\nResponse received was :\n{0}",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()
' Create a new NameValueCollection instance to hold some custom parameters to be posted to the URL.
Dim myNameValueCollection As New NameValueCollection()
Console.WriteLine("Please enter the following parameters to be posted to the URL:")
Console.Write("Name:")
Dim name As String = Console.ReadLine()

Console.Write("Age:")
Dim age As String = Console.ReadLine()

Console.Write("Address:")
Dim address As String = Console.ReadLine()

' Add necessary parameter/value pairs to the name/value container.
myNameValueCollection.Add("Name", name)
myNameValueCollection.Add("Address", address)
myNameValueCollection.Add("Age", age)

Console.WriteLine(ControlChars.Cr + "Uploading to {0} ...", uriString)
' The Upload(String,NameValueCollection)' method implicitly sets the HTTP POST as the request method.			
Dim responseArray As Byte() = myWebClient.UploadValues(uriString, myNameValueCollection)

' Decode and display the response.
Console.WriteLine(ControlChars.Cr + "Response received was :" + ControlChars.Cr + "{0}", Encoding.ASCII.GetString(responseArray))

Poznámky

Opatrnost

WebRequest, HttpWebRequest, ServicePointa WebClient jsou zastaralé a neměli byste je používat pro nový vývoj. Místo toho použijte HttpClient.

Metoda UploadValues odešle NameValueCollection na server. Tato metoda blokuje při nahrávání dat. Pokud chcete pokračovat v provádění při čekání na odpověď serveru, použijte jednu z metod UploadValuesAsync.

Pokud základní požadavek server nerozumí, základní třídy protokolu určují, co se stane. Obvykle se WebException vyvolá s vlastností Status nastavenou tak, aby označí chybu.

Pokud je hlavička Content-type null, metoda UploadValues ji nastaví na "application/x-www-form-urlencoded".

Pokud BaseAddress vlastnost není prázdný řetězec ("") a address neobsahuje absolutní identifikátor URI, address musí být relativní identifikátor URI, který se zkombinuje s BaseAddress k vytvoření absolutního identifikátoru URI požadovaných dat. Pokud QueryString vlastnost není prázdný řetězec, připojí se k address.

Tato metoda používá příkaz STOR k nahrání prostředku FTP. Pro prostředek HTTP se použije metoda POST.

Poznámka

Tento člen vypíše informace o trasování, když ve své aplikaci povolíte trasování sítě. Další informace naleznete v tématu trasování sítě v rozhraní .NET Framework.

Platí pro

UploadValues(Uri, NameValueCollection)

Zdroj:
WebClient.cs
Zdroj:
WebClient.cs
Zdroj:
WebClient.cs

Nahraje zadanou kolekci názvů a hodnot do prostředku identifikovaného zadaným identifikátorem URI.

public:
 cli::array <System::Byte> ^ UploadValues(Uri ^ address, System::Collections::Specialized::NameValueCollection ^ data);
public byte[] UploadValues (Uri address, System.Collections.Specialized.NameValueCollection data);
member this.UploadValues : Uri * System.Collections.Specialized.NameValueCollection -> byte[]
Public Function UploadValues (address As Uri, data As NameValueCollection) As Byte()

Parametry

address
Uri

Identifikátor URI prostředku pro příjem kolekce.

data
NameValueCollection

NameValueCollection odeslat do prostředku.

Návraty

Byte[]

Pole Byte obsahující tělo odpovědi z prostředku.

Výjimky

Parametr address je null.

-nebo-

Parametr data je null.

Identifikátor URI vytvořený kombinací BaseAddressa address je neplatný.

-nebo-

data je null.

-nebo-

Ze serveru, který je hostitelem prostředku, nebyla žádná odpověď.

-nebo-

Při otevírání datového proudu došlo k chybě.

-nebo-

Hlavička Content-type není null ani application/x-www-form-urlencoded.

Poznámky

Opatrnost

WebRequest, HttpWebRequest, ServicePointa WebClient jsou zastaralé a neměli byste je používat pro nový vývoj. Místo toho použijte HttpClient.

Metoda UploadValues odešle NameValueCollection na server. Tato metoda blokuje při nahrávání dat. Pokud chcete pokračovat v provádění při čekání na odpověď serveru, použijte jednu z metod UploadValuesAsync.

Pokud základní požadavek server nerozumí, základní třídy protokolu určují, co se stane. Obvykle se WebException vyvolá s vlastností Status nastavenou tak, aby označí chybu.

Pokud je hlavička Content-type null, metoda UploadValues ji nastaví na "application/x-www-form-urlencoded".

Pokud BaseAddress vlastnost není prázdný řetězec ("") a address neobsahuje absolutní identifikátor URI, address musí být relativní identifikátor URI, který se zkombinuje s BaseAddress k vytvoření absolutního identifikátoru URI požadovaných dat. Pokud QueryString vlastnost není prázdný řetězec, připojí se k address.

Tato metoda používá příkaz STOR k nahrání prostředku FTP. Pro prostředek HTTP se použije metoda POST.

Poznámka

Tento člen vypíše informace o trasování, když ve své aplikaci povolíte trasování sítě. Další informace naleznete v tématu trasování sítě v rozhraní .NET Framework.

Platí pro

UploadValues(String, String, NameValueCollection)

Zdroj:
WebClient.cs
Zdroj:
WebClient.cs
Zdroj:
WebClient.cs

Nahraje zadanou kolekci name/value do prostředku identifikovaného zadaným identifikátorem URI pomocí zadané metody.

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

Parametry

address
String

Identifikátor URI prostředku pro příjem kolekce.

method
String

Metoda HTTP použitá k odeslání souboru do prostředku. Pokud má hodnotu null, výchozí hodnota je POST pro http a STOR pro ftp.

data
NameValueCollection

NameValueCollection odeslat do prostředku.

Návraty

Byte[]

Pole Byte obsahující tělo odpovědi z prostředku.

Výjimky

Parametr address je null.

-nebo-

Parametr data je null.

Identifikátor URI vytvořený kombinací BaseAddressa address je neplatný.

-nebo-

data je null.

-nebo-

Při otevírání datového proudu došlo k chybě.

-nebo-

Ze serveru, který je hostitelem prostředku, nebyla žádná odpověď.

-nebo-

Hodnota záhlaví Content-type není null a není application/x-www-form-urlencoded.

Příklady

Následující příklad kódu shromažďuje informace od uživatele (jméno, věk a adresa) a publikuje hodnoty na server pomocí UploadValues. V konzole se zobrazí jakákoli odpověď ze serveru.

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

// Create a new WebClient instance.
WebClient^ myWebClient = gcnew WebClient;

// Create a new NameValueCollection instance to hold some custom parameters to be posted to the URL.
NameValueCollection^ myNameValueCollection = gcnew NameValueCollection;

Console::WriteLine( "Please enter the following parameters to be posted to the URI" );
Console::Write( "Name: " );
String^ name = Console::ReadLine();

Console::Write( "Age: " );
String^ age = Console::ReadLine();

Console::Write( "Address: " );
String^ address = Console::ReadLine();

// Add necessary parameter/value pairs to the name/value container.
myNameValueCollection->Add( "Name", name );
myNameValueCollection->Add( "Address", address );
myNameValueCollection->Add( "Age", age );
Console::WriteLine( "\nUploading to {0} ...", uriString );

// Upload the NameValueCollection.
array<Byte>^ responseArray = myWebClient->UploadValues( uriString, "POST", myNameValueCollection );

// Decode and display the response.
Console::WriteLine( "\nResponse received was :\n {0}", 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();

// Create a new NameValueCollection instance to hold some custom parameters to be posted to the URL.
NameValueCollection myNameValueCollection = new NameValueCollection();

Console.WriteLine("Please enter the following parameters to be posted to the URI");
Console.Write("Name:");
string name = Console.ReadLine();

Console.Write("Age:");
string age = Console.ReadLine();

Console.Write("Address:");
string address = Console.ReadLine();

// Add necessary parameter/value pairs to the name/value container.
myNameValueCollection.Add("Name",name);			
myNameValueCollection.Add("Address",address);
myNameValueCollection.Add("Age",age);
Console.WriteLine("\nUploading to {0} ...",  uriString);

// Upload the NameValueCollection.
byte[] responseArray = myWebClient.UploadValues(uriString,"POST",myNameValueCollection);

// Decode and display the response.
Console.WriteLine("\nResponse received was :\n{0}",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()

' Create a new NameValueCollection instance to hold some custom parameters to be posted to the URL.
Dim myNameValueCollection As New NameValueCollection()

Console.WriteLine("Please enter the following parameters to be posted to the Url")
Console.Write("Name:")
Dim name As String = Console.ReadLine()

Console.Write("Age:")
Dim age As String = Console.ReadLine()

Console.Write("Address:")
Dim address As String = Console.ReadLine()

' Add necessary parameter/value pairs to the name/value container.
myNameValueCollection.Add("Name", name)
myNameValueCollection.Add("Address", address)
myNameValueCollection.Add("Age", age)

Console.WriteLine(ControlChars.Cr + "Uploading to {0} ...", uriString)

' Upload the NameValueCollection.
Dim responseArray As Byte() = myWebClient.UploadValues(uriString, "POST", myNameValueCollection)

' Decode and display the response.
Console.WriteLine(ControlChars.Cr + "Response received was :" + ControlChars.Cr + "{0}", Encoding.ASCII.GetString(responseArray))

Poznámky

Opatrnost

WebRequest, HttpWebRequest, ServicePointa WebClient jsou zastaralé a neměli byste je používat pro nový vývoj. Místo toho použijte HttpClient.

Metoda UploadValues odešle NameValueCollection do prostředku pomocí metody zadané v parametru method a vrátí všechny odpovědi ze serveru. Tato metoda blokuje při nahrávání dat. Pokud chcete pokračovat v provádění při čekání na odpověď serveru, použijte jednu z metod UploadValuesAsync.

Pokud je hlavička Content-typenull, metoda UploadValues ji nastaví na application/x-www-form-urlencoded.

Pokud parametr method určuje operaci, která není serverem srozumitelná, základní třídy protokolu určují, co se stane. Obvykle se WebException vyvolá s vlastností Status nastavenou tak, aby označí chybu.

Pokud BaseAddress vlastnost není prázdný řetězec ("") a address neobsahuje absolutní identifikátor URI, address musí být relativní identifikátor URI, který se zkombinuje s BaseAddress k vytvoření absolutního identifikátoru URI požadovaných dat. Pokud QueryString vlastnost není prázdný řetězec, připojí se k address.

Poznámka

Tento člen vypíše informace o trasování, když ve své aplikaci povolíte trasování sítě. Další informace naleznete v tématu trasování sítě v rozhraní .NET Framework.

Platí pro

UploadValues(Uri, String, NameValueCollection)

Zdroj:
WebClient.cs
Zdroj:
WebClient.cs
Zdroj:
WebClient.cs

Nahraje zadanou kolekci name/value do prostředku identifikovaného zadaným identifikátorem URI pomocí zadané metody.

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

Parametry

address
Uri

Identifikátor URI prostředku pro příjem kolekce.

method
String

Metoda HTTP použitá k odeslání souboru do prostředku. Pokud má hodnotu null, výchozí hodnota je POST pro http a STOR pro ftp.

data
NameValueCollection

NameValueCollection odeslat do prostředku.

Návraty

Byte[]

Pole Byte obsahující tělo odpovědi z prostředku.

Výjimky

Parametr address je null.

-nebo-

Parametr data je null.

Identifikátor URI vytvořený kombinací BaseAddressa address je neplatný.

-nebo-

data je null.

-nebo-

Při otevírání datového proudu došlo k chybě.

-nebo-

Ze serveru, který je hostitelem prostředku, nebyla žádná odpověď.

-nebo-

Hodnota záhlaví Content-type není null a není application/x-www-form-urlencoded.

Poznámky

Opatrnost

WebRequest, HttpWebRequest, ServicePointa WebClient jsou zastaralé a neměli byste je používat pro nový vývoj. Místo toho použijte HttpClient.

Metoda UploadValues odešle NameValueCollection do prostředku pomocí metody zadané v parametru method a vrátí všechny odpovědi ze serveru. Tato metoda blokuje při nahrávání dat. Pokud chcete pokračovat v provádění při čekání na odpověď serveru, použijte jednu z metod UploadValuesAsync.

Pokud je hlavička Content-typenull, metoda UploadValues ji nastaví na application/x-www-form-urlencoded.

Pokud parametr method určuje operaci, která není serverem srozumitelná, základní třídy protokolu určují, co se stane. Obvykle se WebException vyvolá s vlastností Status nastavenou tak, aby označí chybu.

Pokud BaseAddress vlastnost není prázdný řetězec ("") a address neobsahuje absolutní identifikátor URI, address musí být relativní identifikátor URI, který se zkombinuje s BaseAddress k vytvoření absolutního identifikátoru URI požadovaných dat. Pokud QueryString vlastnost není prázdný řetězec, připojí se k address.

Poznámka

Tento člen vypíše informace o trasování, když ve své aplikaci povolíte trasování sítě. Další informace naleznete v tématu trasování sítě v rozhraní .NET Framework.

Platí pro