1

Я пытаюсь загрузить файл на ftp-сервере. Я не смог найти FtpWebRequest класс в телефоне Windows, поэтому я пытаюсь добавить новый проект Portable Class Library. Я добавил следующий кодFtpWebRequest не найден в Portable Class Library

public void GetDataUsingDataContract(byte[] fileByte) 
    { 
     FtpWebRequest request = (FtpWebRequest)WebRequest.Create("ftp://www.contoso.com/test.htm"); 
     request.Method = WebRequestMethods.Ftp.UploadFile; 

     // This example assumes the FTP site uses anonymous logon. 
     request.Credentials = new NetworkCredential("uname", "pass"); 

     // Copy the contents of the file to the request stream. 
     // StreamReader sourceStream = new StreamReader("testfile.txt"); 
     byte[] fileContents = fileByte;//Encoding.UTF8.GetBytes(sourceStream.ReadToEnd()); 
     //sourceStream.Close(); 
     request.ContentLength = fileContents.Length; 

     Stream requestStream = request.GetRequestStream(); 
     requestStream.Write(fileContents, 0, fileContents.Length); 
     requestStream.Close(); 

     FtpWebResponse response = (FtpWebResponse)request.GetResponse(); 

     Console.WriteLine("Upload File Complete, status {0}", response.StatusDescription); 

     response.Close(); 
    } 

Но есть один и тот же вопрос, то я не мог нашел FtpWebResponse класса. Поддерживается ли это в переносимой библиотеке классов?

ответ

0

У меня уже есть ответ, FTPWebRequest/FTPWebResponse недоступны в переносном подмножестве .NET.

Это подмножество состоит из API, которые вы можете найти на все структуры (Silverlight, XBox, Windows Phone 7/8, .Net х ... и т.д.)

Если вы не можете найти апи в пределах родной базы (например, Windows Phone), вы не найдете его в подмножестве переносной библиотеки.

Если вы хотите использовать ftp на телефоне Windows, я думаю, вам нужно будет найти сторонний api, такой как OpenNETCF FTP, который был создан для компактной структуры.

https://ftp.codeplex.com/