C# FTP Server Bağlantısı Yapmak

C# FTP Server Bağlantısı Yapmak

11 Nisan 2019 1 Yazar: Mustafa BÜKÜLMEZ
Toplam Görüntülenme : 52
Yaklaşık okuma süresi : 3 DK
C# FTP Server Dosya Kontrolü Yapmak
FTP Nedir? Ne işe Yarar? Nasıl Kullanılır?
C# FTP Server Bağlantısı Yapmak
5 (100%) 2 Oy

C# FTP Server Bağlantısı Yapmak yazım ile C# eğitim setime devam ediyorum. Bu yazım C# İle FTP Üzerine İşlemler yazı serimin 2. yazısıdır.

C# FTP Server Bağlantısı Yapmak

Önceki yazım olan FTP Nedir? Ne işe Yarar? Nasıl Kullanılır? yazımda ftp server hakkında genel bilgiler vermiştim. Bu yazımda C# ile bir ftp server ‘e nasıl bağlanacağımızı göreceğiz.

İlk olarak bir istek yani Request oluşturmamız gerekiyor. Bu Request ‘i FTP serverdeki bir klasör yoluna yapacağız. Bu klasör yolu ip port ve klasör adı ile oluşacak. Aşağıdaki tanımlama da  görebilirsiniz.

Advertisements
string  FTPDosyaYolu = "ftp:/88.88.88.88:8888//FTP_Files";

Bu şekilde bir bağlantı url miz olması gerekiyor. Biz 88.88.88.88 nolu ip adresine 8888 numaralı port üzerinden FTP_Files adlı klasöre bağlanmak istiyoruz. Yani FTP Server’e yapacağımız Request’i bu url ile yapacağız.

Öncelikle FtpWebRequest sınıfını kullabilmemizi sağlayacak olan kütüphaneyi ekleyelim.

using System.Net;

Request’imizi oluşturalım.

 FtpWebRequest request = (FtpWebRequest)FtpWebRequest.Create(FTPDosyaYolu);

FtpWebRequest  sınıfının Create metodu ile yeni bir (request) istek oluşturduk. Şuan sadece adres çubuğuna url yi yazıp enter tuşuna basmış olduk. Bize kullanıcı adı ve şifre soruyor. Credentials özelliği ( kimlik bilgileri ) ile bağlantıyı açıyoruz.

string username = "kullaniciadi";
string password = "şifre";
request.Credentials = new NetworkCredential(username, password);

Kimlik bilgilerimizi de verdik. Şimdi bağlantımızın özelliklerini belirliyoruz.

request.UsePassive = true; // pasif olarak kullanabilme
request.UseBinary = true; // aktarım binary ile olacak
request.KeepAlive = false; // sürekli açık tutma
request.ContentLength = fi.Length; // işlem yapılacak dosyanın Fileİnfo sınıfı ile aldığımız uzunluk bilgisi

Bu özelliklerimizi de verdikten sonra en önemli özelliğimize geldi sıra. Bağlantımızın amacı ne? Klasör listesi almak, dosya indirmek, dosya yüklemek vs. Method özelliği ile de yapacağımız işlemin ne olduğunu belirteceğiz.

request.Method = WebRequestMethods.Ftp.AppendFile 
request.Method = WebRequestMethods.Ftp.DeleteFile 
request.Method = WebRequestMethods.Ftp.DownloadFile 
request.Method = WebRequestMethods.Ftp.GetDateTimestamp
request.Method = WebRequestMethods.Ftp.GetFileSize
request.Method = WebRequestMethods.Ftp.ListDirectory
request.Method = WebRequestMethods.Ftp.ListDirectoryDetails
request.Method = WebRequestMethods.Ftp.MakeDirectory
request.Method = WebRequestMethods.Ftp.PrintWorkingDirectory
request.Method = WebRequestMethods.Ftp.RemoveDirectory
request.Method = WebRequestMethods.Ftp.Rename
request.Method = WebRequestMethods.Ftp.UploadFile
request.Method = WebRequestMethods.Ftp.UploadFileWithUniqueName

Yukarıda gördüğünüz kadar farklı metodumuz var. Ben bunların hepsini anlatmayacağım ama ne anlama geldiklerini bu dersim içerisinde vereceğim.

  • AppendFile = Dosya ekle
  • DeleteFile  = Dosya Sil
  • DownloadFile  = Dosya İndir
  • GetDateTimestamp  = Tarih Zaman Damgasını Al
  • GetFileSize = Dosya Boyutunu Al
  • ListDirectory  = Klasör Listesini Al
  • ListDirectoryDetails = Detaylı Klasör Listesini Al
  • MakeDirectory = Klasör Oluştur
  • PrintWorkingDirectory = Çalışma Klasörünü Yazdır
  • RemoveDirectory = Klasör Sil
  • Rename = Yeniden Adlandır
  • UploadFile = Dosya Yükle
  • UploadFileWithUniqueName = Benzersiz isim ile yükle
İlgili İçerik  C# Extension Methods - Genişletme Metodları #2

FTP Server bağlantısı işte bu kadar. Şuanda biz FTP Server’e bağlanmış olduk. Bundan sonrası artık isteğimize (request) yanıtlar (reponse) alacağız. Aldığımız yanıtlara method olarak gönderdiğimiz istekleri gerçekleştireceğiz.


C# FTP Server Bağlantısı Yapmak, yazımızda bu kadar arkadaşlar. C# İle FTP Üzerine İşlemler yazı serimin devamında görüşmek üzere.

C Sharp Eğitim Seti eğitimi sayfasına gitmek için tıklayınız.

Derslerime özel olarak hazırladığım Github Projeme buradan ulaşabilirsiniz…

Takipte ve Sağlıcakla kalın. 😉

C# FTP Server Dosya Kontrolü Yapmak
FTP Nedir? Ne işe Yarar? Nasıl Kullanılır?