Aracılığıyla paylaş


WebClient.UploadFile Yöntem

Tanım

Belirtilen URI'ye sahip bir kaynağa yerel dosya yükler.

Aşırı Yüklemeler

UploadFile(String, String)

Belirtilen yerel dosyayı belirtilen URI'ye sahip bir kaynağa yükler.

UploadFile(Uri, String)

Belirtilen yerel dosyayı belirtilen URI'ye sahip bir kaynağa yükler.

UploadFile(String, String, String)

Belirtilen yerel dosyayı belirtilen yöntemi kullanarak belirtilen kaynağa yükler.

UploadFile(Uri, String, String)

Belirtilen yerel dosyayı belirtilen yöntemi kullanarak belirtilen kaynağa yükler.

UploadFile(String, String)

Kaynak:
WebClient.cs
Kaynak:
WebClient.cs
Kaynak:
WebClient.cs

Belirtilen yerel dosyayı belirtilen URI'ye sahip bir kaynağa yükler.

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()

Parametreler

address
String

Dosyayı alacak kaynağın URI'sini. Örneğin, ftp://localhost/samplefile.txt.

fileName
String

Kaynağa gönderilecek dosya. Örneğin, "samplefile.txt".

Döndürülenler

Byte[]

Kaynaktan gelen yanıtın gövdesini içeren bir Byte dizisi.

Özel durumlar

address parametresi null.

-veya-

fileName parametresi null.

BaseAddressve address birleştirilerek oluşturulan URI geçersiz.

-veya-

fileName null, Empty, geçersiz karakterler içeriyor veya yok.

-veya-

Dosya karşıya yüklenirken bir hata oluştu.

-veya-

Kaynağı barındıran sunucudan yanıt alınmadı.

-veya-

Content-type üst bilgisi multipartile başlar.

Örnekler

Aşağıdaki kod örneği, UploadFilekullanarak belirtilen dosyayı belirtilen URI'ye yükler. Sunucu tarafından döndürülen tüm yanıtlar konsolda görüntülenir.

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))

Aşağıdaki kod örneği, postalanan dosyaları kabul edebilen ve UploadFile yöntemiyle kullanıma uygun bir ASP.NET sayfasını gösterir. Sayfa bir Web sunucusunda bulunmalıdır. Adresi, UploadFile yönteminin address parametresinin değerini sağlar.

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

Açıklamalar

Dikkat

WebRequest, HttpWebRequest, ServicePointve WebClient kullanım dışıdır ve bunları yeni geliştirme için kullanmamalısınız. Bunun yerine HttpClient kullanın.

UploadFile yöntemi kaynağa yerel bir dosya gönderir. Bu yöntem bir FTP kaynağını karşıya yüklemek için STOR komutunu kullanır. BIR HTTP kaynağı için POST yöntemi kullanılır.

Bu yöntem dosyayı karşıya yüklerken engeller. Sunucunun yanıtını beklerken yürütmeye devam etmek için UploadFileAsync yöntemlerinden birini kullanın.

POST yöntemi HTTP tarafından tanımlanır. Temel alınan istek HTTP kullanmıyorsa ve POST sunucu tarafından anlaşılmıyorsa, ne olduğunu temel alınan protokol sınıfları belirler. Genellikle, hatayı belirtmek için Status özelliği ayarlanmış bir WebException oluşturulur.

BaseAddress özelliği boş bir dize ("") değilse ve address mutlak bir URI içermiyorsa, address istenen verilerin mutlak URI'sini oluşturmak için BaseAddress ile birleştirilen göreli bir URI olmalıdır. QueryString özelliği boş bir dize değilse, addresseklenir.

Not

Bu üye, uygulamanızda ağ izlemeyi etkinleştirdiğinizde izleme bilgilerini döndürür. Daha fazla bilgi için bkz. .NET FrameworkAğ İzleme.

Şunlara uygulanır

UploadFile(Uri, String)

Kaynak:
WebClient.cs
Kaynak:
WebClient.cs
Kaynak:
WebClient.cs

Belirtilen yerel dosyayı belirtilen URI'ye sahip bir kaynağa yükler.

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()

Parametreler

address
Uri

Dosyayı alacak kaynağın URI'sini. Örneğin, ftp://localhost/samplefile.txt.

fileName
String

Kaynağa gönderilecek dosya. Örneğin, "samplefile.txt".

Döndürülenler

Byte[]

Kaynaktan gelen yanıtın gövdesini içeren bir Byte dizisi.

Özel durumlar

address parametresi null.

-veya-

fileName parametresi null.

BaseAddressve address birleştirilerek oluşturulan URI geçersiz.

-veya-

fileName null, Empty, geçersiz karakterler içeriyor veya yok.

-veya-

Dosya karşıya yüklenirken bir hata oluştu.

-veya-

Kaynağı barındıran sunucudan yanıt alınmadı.

-veya-

Content-type üst bilgisi multipartile başlar.

Açıklamalar

Dikkat

WebRequest, HttpWebRequest, ServicePointve WebClient kullanım dışıdır ve bunları yeni geliştirme için kullanmamalısınız. Bunun yerine HttpClient kullanın.

UploadFile yöntemi kaynağa yerel bir dosya gönderir. Bu yöntem bir FTP kaynağını karşıya yüklemek için STOR komutunu kullanır. BIR HTTP kaynağı için POST yöntemi kullanılır.

Bu yöntem dosyayı karşıya yüklerken engeller. Sunucunun yanıtını beklerken yürütmeye devam etmek için UploadFileAsync yöntemlerinden birini kullanın.

POST yöntemi HTTP tarafından tanımlanır. Temel alınan istek HTTP kullanmıyorsa ve POST sunucu tarafından anlaşılmıyorsa, ne olduğunu temel alınan protokol sınıfları belirler. Genellikle, hatayı belirtmek için Status özelliği ayarlanmış bir WebException oluşturulur.

BaseAddress özelliği boş bir dize ("") değilse ve address mutlak bir URI içermiyorsa, address istenen verilerin mutlak URI'sini oluşturmak için BaseAddress ile birleştirilen göreli bir URI olmalıdır. QueryString özelliği boş bir dize değilse, addresseklenir.

Not

Bu üye, uygulamanızda ağ izlemeyi etkinleştirdiğinizde izleme bilgilerini döndürür. Daha fazla bilgi için bkz. .NET FrameworkAğ İzleme.

Şunlara uygulanır

UploadFile(String, String, String)

Kaynak:
WebClient.cs
Kaynak:
WebClient.cs
Kaynak:
WebClient.cs

Belirtilen yerel dosyayı belirtilen yöntemi kullanarak belirtilen kaynağa yükler.

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()

Parametreler

address
String

Dosyayı alacak kaynağın URI'sini.

method
String

Dosyayı kaynağa göndermek için kullanılan yöntem. nullise varsayılan değer http için POST ve ftp için STOR'dır.

fileName
String

Kaynağa gönderilecek dosya.

Döndürülenler

Byte[]

Kaynaktan gelen yanıtın gövdesini içeren bir Byte dizisi.

Özel durumlar

address parametresi null.

-veya-

fileName parametresi null.

BaseAddressve address birleştirilerek oluşturulan URI geçersiz.

-veya-

fileName null, Empty, geçersiz karakterler içeriyor veya yok.

-veya-

Dosya karşıya yüklenirken bir hata oluştu.

-veya-

Kaynağı barındıran sunucudan yanıt alınmadı.

-veya-

Content-type üst bilgisi multipartile başlar.

Örnekler

Aşağıdaki kod örneği, UploadFilekullanarak belirtilen dosyayı belirtilen URI'ye yükler. Sunucu tarafından döndürülen tüm yanıtlar konsolda görüntülenir.

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))

Aşağıdaki kod örneği, postalanan dosyaları kabul edebilen ve UploadFile yöntemiyle kullanıma uygun bir ASP.NET sayfasını gösterir. Sayfa bir Web sunucusunda bulunmalıdır. Adresi, UploadFile yönteminin address parametresinin değerini sağlar.

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

Açıklamalar

Dikkat

WebRequest, HttpWebRequest, ServicePointve WebClient kullanım dışıdır ve bunları yeni geliştirme için kullanmamalısınız. Bunun yerine HttpClient kullanın.

Adres bir HTTP kaynağı belirttiğinde, UploadFile yöntemi method parametresinde belirtilen HTTP yöntemini kullanarak bir kaynağa yerel bir dosya gönderir ve sunucudan herhangi bir yanıt döndürür. Bu yöntem dosyayı karşıya yüklerken engeller. Sunucunun yanıtını beklerken yürütmeye devam etmek için UploadFileAsync yöntemlerinden birini kullanın.

method parametresi sunucu veya address kaynağı tarafından anlaşılmayan bir fiil belirtirse, ne olduğunu temel protokol sınıfları belirler. Genellikle, hatayı belirtmek için Status özelliği ayarlanmış bir WebException oluşturulur.

BaseAddress özelliği boş bir dize ("") değilse ve address mutlak bir URI içermiyorsa, address istenen verilerin mutlak URI'sini oluşturmak için BaseAddress ile birleştirilen göreli bir URI olmalıdır. QueryString özelliği boş bir dize değilse, addresseklenir.

Not

Bu üye, uygulamanızda ağ izlemeyi etkinleştirdiğinizde izleme bilgilerini döndürür. Daha fazla bilgi için bkz. .NET FrameworkAğ İzleme.

Şunlara uygulanır

UploadFile(Uri, String, String)

Kaynak:
WebClient.cs
Kaynak:
WebClient.cs
Kaynak:
WebClient.cs

Belirtilen yerel dosyayı belirtilen yöntemi kullanarak belirtilen kaynağa yükler.

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()

Parametreler

address
Uri

Dosyayı alacak kaynağın URI'sini.

method
String

Dosyayı kaynağa göndermek için kullanılan yöntem. nullise varsayılan değer http için POST ve ftp için STOR'dır.

fileName
String

Kaynağa gönderilecek dosya.

Döndürülenler

Byte[]

Kaynaktan gelen yanıtın gövdesini içeren bir Byte dizisi.

Özel durumlar

address parametresi null.

-veya-

fileName parametresi null.

BaseAddressve address birleştirilerek oluşturulan URI geçersiz.

-veya-

fileName null, Empty, geçersiz karakterler içeriyor veya yok.

-veya-

Dosya karşıya yüklenirken bir hata oluştu.

-veya-

Kaynağı barındıran sunucudan yanıt alınmadı.

-veya-

Content-type üst bilgisi multipartile başlar.

Açıklamalar

Dikkat

WebRequest, HttpWebRequest, ServicePointve WebClient kullanım dışıdır ve bunları yeni geliştirme için kullanmamalısınız. Bunun yerine HttpClient kullanın.

Adres bir HTTP kaynağı belirttiğinde, UploadFile yöntemi method parametresinde belirtilen HTTP yöntemini kullanarak bir kaynağa yerel bir dosya gönderir ve sunucudan herhangi bir yanıt döndürür. Bu yöntem dosyayı karşıya yüklerken engeller. Sunucunun yanıtını beklerken yürütmeye devam etmek için UploadFileAsync yöntemlerinden birini kullanın.

method parametresi sunucu veya address kaynağı tarafından anlaşılmayan bir fiil belirtirse, ne olduğunu temel protokol sınıfları belirler. Genellikle, hatayı belirtmek için Status özelliği ayarlanmış bir WebException oluşturulur.

BaseAddress özelliği boş bir dize ("") değilse ve address mutlak bir URI içermiyorsa, address istenen verilerin mutlak URI'sini oluşturmak için BaseAddress ile birleştirilen göreli bir URI olmalıdır. QueryString özelliği boş bir dize değilse, addresseklenir.

Not

Bu üye, uygulamanızda ağ izlemeyi etkinleştirdiğinizde izleme bilgilerini döndürür. Daha fazla bilgi için bkz. .NET FrameworkAğ İzleme.

Şunlara uygulanır