zoukankan      html  css  js  c++  java
  • System.Net.FtpWebRequest.cs

    ylbtech-System.Net.FtpWebRequest.cs

     实现文件传输协议(FTP)客户端。

    1.返回顶部
    1、
    #region 程序集 System, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
    // C:Program Files (x86)Reference AssembliesMicrosoftFramework.NETFrameworkv4.0System.dll
    #endregion
    
    using System.IO;
    using System.Net.Cache;
    using System.Security.Cryptography.X509Certificates;
    
    namespace System.Net
    {
        //
        // 摘要:
        //     实现文件传输协议 (FTP) 客户端。
        public sealed class FtpWebRequest : WebRequest
        {
            //
            // 摘要:
            //     定义所有 FTP 请求的默认缓存策略。
            //
            // 返回结果:
            //     System.Net.Cache.RequestCachePolicy,定义 FTP 请求的缓存策略。
            //
            // 异常:
            //   T:System.ArgumentNullException:
            //     调用方试图将此属性设置为 null。
            public static RequestCachePolicy DefaultCachePolicy { get; set; }
            //
            // 摘要:
            //     获取或设置写入或读取流时的超时。
            //
            // 返回结果:
            //     读取或写入超时之前的毫秒数。默认值为 300,000 毫秒(5 分钟)。
            //
            // 异常:
            //   T:System.InvalidOperationException:
            //     已发送请求。
            //
            //   T:System.ArgumentOutOfRangeException:
            //     为 Set 操作指定的值小于或等于零,并且不等于 System.Threading.Timeout.Infinite。
            public int ReadWriteTimeout { get; set; }
            //
            // 摘要:
            //     总是引发 System.NotSupportedException。
            //
            // 返回结果:
            //     总是引发 System.NotSupportedException。
            //
            // 异常:
            //   T:System.NotSupportedException:
            //     FTP 不支持内容类型信息。
            public override string ContentType { get; set; }
            //
            // 摘要:
            //     获取空 System.Net.WebHeaderCollection 对象。
            //
            // 返回结果:
            //     一个空 System.Net.WebHeaderCollection 对象。
            public override WebHeaderCollection Headers { get; set; }
            //
            // 摘要:
            //     获取或设置 System.Boolean,它指定是否使用 SSL 连接。
            //
            // 返回结果:
            //     如果控制和数据传输是加密的,则为 true;否则为 false。默认值为 false。
            //
            // 异常:
            //   T:System.InvalidOperationException:
            //     到 FTP 服务器的连接已经建立。
            public bool EnableSsl { get; set; }
            //
            // 摘要:
            //     获取用于建立到 FTP 服务器的加密连接的证书。
            //
            // 返回结果:
            //     包含客户端证书的 System.Security.Cryptography.X509Certificates.X509CertificateCollection
            //     对象。
            public X509CertificateCollection ClientCertificates { get; set; }
            //
            // 摘要:
            //     获取或设置客户端应用程序的数据传输过程的行为。
            //
            // 返回结果:
            //     如果客户端应用程序的数据传输过程侦听数据端口上的连接,则为 false;如果客户端应在数据端口上启动连接,则为 true。默认值为 true。
            //
            // 异常:
            //   T:System.InvalidOperationException:
            //     对于一个已在进行的请求为此属性指定了一个新值。
            public bool UsePassive { get; set; }
            //
            // 摘要:
            //     获取或设置一个 System.Boolean 值,该值指定文件传输的数据类型。
            //
            // 返回结果:
            //     true,指示服务器要传输的是二进制数据;false,指示数据为文本。默认值为 true。
            //
            // 异常:
            //   T:System.InvalidOperationException:
            //     对于一个已在进行的请求为此属性指定了一个新值。
            public bool UseBinary { get; set; }
            //
            // 摘要:
            //     获取或设置一个 System.Boolean 值,该值指定在请求完成之后是否关闭到 FTP 服务器的控制连接。
            //
            // 返回结果:
            //     如果不应销毁到服务器的连接,则为 true;否则为 false。默认值为 true。
            //
            // 异常:
            //   T:System.InvalidOperationException:
            //     对于一个已在进行的请求为此属性指定了一个新值。
            public bool KeepAlive { get; set; }
            //
            // 摘要:
            //     获取用于连接 FTP 服务器的 System.Net.ServicePoint 对象。
            //
            // 返回结果:
            //     可用于自定义连接行为的 System.Net.ServicePoint 对象。
            public ServicePoint ServicePoint { get; }
            //
            // 摘要:
            //     获取或设置连接组的名称,该连接组包含用于发送当前请求的服务点。
            //
            // 返回结果:
            //     包含连接组名称的 System.String 值。
            //
            // 异常:
            //   T:System.InvalidOperationException:
            //     对于一个已在进行的请求为此属性指定了一个新值。
            public override string ConnectionGroupName { get; set; }
            //
            // 摘要:
            //     获取或设置用于与 FTP 服务器通信的代理。
            //
            // 返回结果:
            //     负责与 FTP 服务器通信的 System.Net.IWebProxy 实例。
            //
            // 异常:
            //   T:System.ArgumentNullException:
            //     此属性不能设置为 null。
            //
            //   T:System.InvalidOperationException:
            //     对于一个已在进行的请求为此属性指定了一个新值。
            public override IWebProxy Proxy { get; set; }
            //
            // 摘要:
            //     获取或设置被 System.Net.FtpWebRequest 类忽略的值。
            //
            // 返回结果:
            //     应忽略的 System.Int64 值。
            public override long ContentLength { get; set; }
            //
            // 摘要:
            //     获取或设置请求所下载的文件的字节偏移量。
            //
            // 返回结果:
            //     指定文件偏移量(以字节为单位)的 System.Int64 实例。默认值为零。
            //
            // 异常:
            //   T:System.InvalidOperationException:
            //     对于一个已在进行的请求为此属性指定了一个新值。
            //
            //   T:System.ArgumentOutOfRangeException:
            //     为该属性指定的值小于 0。
            public long ContentOffset { get; set; }
            //
            // 摘要:
            //     总是引发 System.NotSupportedException。
            //
            // 返回结果:
            //     总是引发 System.NotSupportedException。
            //
            // 异常:
            //   T:System.NotSupportedException:
            //     FTP 不支持预身份验证。
            public override bool PreAuthenticate { get; set; }
            //
            // 摘要:
            //     获取或设置等待请求的毫秒数。
            //
            // 返回结果:
            //     一个 System.Int32 值,包含请求超时前等待的毫秒数。默认值为 System.Threading.Timeout.Infinite。
            //
            // 异常:
            //   T:System.ArgumentOutOfRangeException:
            //     指定的值小于零,并且不为 System.Threading.Timeout.Infinite。
            //
            //   T:System.InvalidOperationException:
            //     对于一个已在进行的请求为此属性指定了一个新值。
            public override int Timeout { get; set; }
            //
            // 摘要:
            //     获取此实例所请求的 URI。
            //
            // 返回结果:
            //     System.Uri 实例,标识使用文件传输协议访问的资源。
            public override Uri RequestUri { get; }
            //
            // 摘要:
            //     获取或设置用于与 FTP 服务器通信的凭据。
            //
            // 返回结果:
            //     System.Net.ICredentials 实例;如果还未设置该属性,则为 null。
            //
            // 异常:
            //   T:System.ArgumentNullException:
            //     为 Set 操作指定的值为 null。
            //
            //   T:System.ArgumentException:
            //     为 Set 操作指定了 System.Net.NetworkCredential 以外的 System.Net.ICredentials 类型。
            //
            //   T:System.InvalidOperationException:
            //     对于一个已在进行的请求为此属性指定了一个新值。
            public override ICredentials Credentials { get; set; }
            //
            // 摘要:
            //     获取或设置重命名文件的新名称。
            //
            // 返回结果:
            //     重命名文件的新名称。
            public string RenameTo { get; set; }
            //
            // 摘要:
            //     获取或设置要发送到 FTP 服务器的命令。
            //
            // 返回结果:
            //     System.String 值,包含要发送到服务器的 FTP 命令。默认值为 System.Net.WebRequestMethods.Ftp.DownloadFile。
            //
            // 异常:
            //   T:System.InvalidOperationException:
            //     对于一个已在进行的请求为此属性指定了一个新值。
            //
            //   T:System.ArgumentException:
            //     此方法无效。- 或 -不支持此方法。- 或 -指定了多个方法。
            public override string Method { get; set; }
            //
            // 摘要:
            //     总是引发 System.NotSupportedException。
            //
            // 返回结果:
            //     总是引发 System.NotSupportedException。
            //
            // 异常:
            //   T:System.NotSupportedException:
            //     FTP 不支持默认凭据。
            public override bool UseDefaultCredentials { get; set; }
    
            //
            // 摘要:
            //     终止异步 FTP 操作。
            public override void Abort();
            //
            // 摘要:
            //     开始以异步方式打开请求的内容流以便写入。
            //
            // 参数:
            //   callback:
            //     一个 System.AsyncCallback 委托,它引用操作完成时要调用的方法。
            //
            //   state:
            //     一个用户定义对象,其中包含该操作的相关信息。操作完成时,此对象传递给了 callback 委托。
            //
            // 返回结果:
            //     System.IAsyncResult 实例,指示操作的状态。
            //
            // 异常:
            //   T:System.InvalidOperationException:
            //     此前对此方法或 System.Net.FtpWebRequest.GetRequestStream 的调用尚未完成。
            //
            //   T:System.Net.WebException:
            //     未能建立到 FTP 服务器的连接。
            //
            //   T:System.Net.ProtocolViolationException:
            //     System.Net.FtpWebRequest.Method 属性没有设置为 System.Net.WebRequestMethods.Ftp.UploadFile。
            public override IAsyncResult BeginGetRequestStream( AsyncCallback callback, object state );
            //
            // 摘要:
            //     开始以异步方式向 FTP 服务器发送请求并从 FTP 服务器接收响应。
            //
            // 参数:
            //   callback:
            //     一个 System.AsyncCallback 委托,它引用操作完成时要调用的方法。
            //
            //   state:
            //     一个用户定义对象,其中包含该操作的相关信息。操作完成时,此对象传递给了 callback 委托。
            //
            // 返回结果:
            //     System.IAsyncResult 实例,指示操作的状态。
            //
            // 异常:
            //   T:System.InvalidOperationException:
            //     已经为此实例调用了 System.Net.FtpWebRequest.GetResponse 或 System.Net.FtpWebRequest.BeginGetResponse(System.AsyncCallback,System.Object)。
            public override IAsyncResult BeginGetResponse( AsyncCallback callback, object state );
            //
            // 摘要:
            //     结束由 System.Net.FtpWebRequest.BeginGetRequestStream(System.AsyncCallback,System.Object)
            //     启动的挂起的异步操作。
            //
            // 参数:
            //   asyncResult:
            //     在操作开始时返回的 System.IAsyncResult 对象。
            //
            // 返回结果:
            //     与此实例关联的可写 System.IO.Stream 实例。
            //
            // 异常:
            //   T:System.ArgumentNullException:
            //     asyncResult 为 null。
            //
            //   T:System.ArgumentException:
            //     未能通过调用 System.Net.FtpWebRequest.BeginGetRequestStream(System.AsyncCallback,System.Object)
            //     获取 asyncResult。
            //
            //   T:System.InvalidOperationException:
            //     已经为 asyncResult 所标识的操作调用了此方法。
            public override Stream EndGetRequestStream( IAsyncResult asyncResult );
            //
            // 摘要:
            //     结束由 System.Net.FtpWebRequest.BeginGetResponse(System.AsyncCallback,System.Object)
            //     启动的挂起的异步操作。
            //
            // 参数:
            //   asyncResult:
            //     在操作开始时返回的 System.IAsyncResult。
            //
            // 返回结果:
            //     包含一个 System.Net.FtpWebResponse 实例的 System.Net.WebResponse 引用。此对象包含 FTP 服务器对请求的响应。
            //
            // 异常:
            //   T:System.ArgumentNullException:
            //     asyncResult 为 null。
            //
            //   T:System.ArgumentException:
            //     未能通过调用 System.Net.FtpWebRequest.BeginGetResponse(System.AsyncCallback,System.Object)
            //     获取 asyncResult。
            //
            //   T:System.InvalidOperationException:
            //     已经为 asyncResult 所标识的操作调用了此方法。
            public override WebResponse EndGetResponse( IAsyncResult asyncResult );
            //
            // 摘要:
            //     检索用于向 FTP 服务器上载数据的流。
            //
            // 返回结果:
            //     可写 System.IO.Stream 实例,用于存储要由当前请求发送到服务器的数据。
            //
            // 异常:
            //   T:System.InvalidOperationException:
            //     System.Net.FtpWebRequest.BeginGetRequestStream(System.AsyncCallback,System.Object)
            //     已被调用并且尚未完成。- 或 -HTTP 代理被启用,而您尝试使用 FTP 命令而非 System.Net.WebRequestMethods.Ftp.DownloadFile、System.Net.WebRequestMethods.Ftp.ListDirectory
            //     或 System.Net.WebRequestMethods.Ftp.ListDirectoryDetails。
            //
            //   T:System.Net.WebException:
            //     未能建立到 FTP 服务器的连接。
            //
            //   T:System.Net.ProtocolViolationException:
            //     System.Net.FtpWebRequest.Method 属性未设置为 System.Net.WebRequestMethods.Ftp.UploadFile
            //     或 System.Net.WebRequestMethods.Ftp.AppendFile。
            public override Stream GetRequestStream();
            //
            // 摘要:
            //     返回 FTP 服务器响应。
            //
            // 返回结果:
            //     包含一个 System.Net.FtpWebResponse 实例的 System.Net.WebResponse 引用。此对象包含 FTP 服务器对请求的响应。
            //
            // 异常:
            //   T:System.InvalidOperationException:
            //     已经为此实例调用了 System.Net.FtpWebRequest.GetResponse 或 System.Net.FtpWebRequest.BeginGetResponse(System.AsyncCallback,System.Object)。-
            //     或 -HTTP 代理被启用,而您尝试使用 FTP 命令而非 System.Net.WebRequestMethods.Ftp.DownloadFile、System.Net.WebRequestMethods.Ftp.ListDirectory
            //     或 System.Net.WebRequestMethods.Ftp.ListDirectoryDetails。
            //
            //   T:System.Net.WebException:
            //     System.Net.FtpWebRequest.EnableSsl 设置为 true,但服务器不支持此功能。
            public override WebResponse GetResponse();
        }
    }
    2、
    2.返回顶部
     
    3.返回顶部
     
    4.返回顶部
     
    5.返回顶部
     
     
    6.返回顶部
     
    warn 作者:ylbtech
    出处:http://ylbtech.cnblogs.com/
    本文版权归作者和博客园共有,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文连接,否则保留追究法律责任的权利。
  • 相关阅读:
    如何提交docker镜像到DockerHub
    【leetcode】200. Number of Islands
    【Java NIO】一文了解NIO
    【Java】同步阻塞式(BIO)TCP通信
    【剑指offer】9、斐波拉契数列
    SolidWorks242个使用技巧
    BR(BoomerangRobot)机器人项目
    Android学习笔记基于回调的事件处理
    Android学习笔记基于监听的事件处理
    Android学习笔记Log类输出日志信息
  • 原文地址:https://www.cnblogs.com/storebook/p/11927304.html
Copyright © 2011-2022 走看看