Ejemplo n.º 1
0
        private static bool SendFtp(FtpSettings ftp, string source, bool ret = true)
        {
            try
            {
                FtpWebRequest request = (FtpWebRequest)WebRequest.Create(new Uri(ftp.ServerAdress));
                request.Method = WebRequestMethods.Ftp.UploadFileWithUniqueName;

                request.Credentials = new NetworkCredential(ftp.Username, ftp.Password);

                byte[] fileContents;
                using (StreamReader sourceStream = new StreamReader(new FileInfo(source).FullName))
                {
                    fileContents = Encoding.UTF8.GetBytes(sourceStream.ReadToEnd());
                }

                request.ContentLength = fileContents.Length;

                using (Stream requestStream = request.GetRequestStream())
                {
                    requestStream.Write(fileContents, 0, fileContents.Length);
                }

                using (FtpWebResponse response = (FtpWebResponse)request.GetResponse())
                {
                    Console.WriteLine("Upload File Complete, status {0}", response.StatusDescription);
                }


                return(true);
            }
            catch
            {
                ret = false;
                return(ret);
            }
        }