最近做一个项目,需要手持终端(WM/CE)对PC端FTP服务器上执行文件的批量上传下载,看了网上很多的帖子,很多都是WebForm、winform上实现的,不管用。各位大侠有没有什么好的例子(最好是稳定的,上传下载速度还可以接受的)。
只剩下这么多分了。如果需要还可以赞了给出。
------解决方案--------------------
不推荐用Webservice,性能不行。
可以用ftp C#客户端程序.
我给你个我们项目中的上传和下载。很稳定.试一下,有问题再沟通。
/***************************************************************/
/************FTP Class for upload and download *****************/
/***************************************************************/
/***************************************************************/
public class FtpWeb
{
string ftpServerIP;
string ftpRemotePath;
string ftpUserID;
string ftpPassword;
string ftpURI;
/// <summary>
/// 连接FTP
/// </summary>
/// <param name="FtpServerIP">FTP连接地址</param>
/// <param name="FtpRemotePath">指定FTP连接成功后的当前目录, 如果不指定即默认为根目录</param>
/// <param name="FtpUserID">用户名</param>
/// <param name="FtpPassword">密码</param>
public FtpWeb(string FtpServerIP, string FtpRemotePath, string FtpUserID, string FtpPassword)
{
ftpServerIP = FtpServerIP;
ftpRemotePath = FtpRemotePath;
ftpUserID = FtpUserID;
ftpPassword = FtpPassword;
ftpURI = "ftp://" + ftpServerIP + "/" + ftpRemotePath + "/";
}
/// <summary>
/// 上传
/// </summary>
/// <param name="filename"></param>
public void Upload(string filename)
{
FileInfo fileInf = new FileInfo(filename);
string uri = ftpURI + fileInf.Name;
FtpWebRequest reqFTP;
reqFTP = (FtpWebRequest)FtpWebRequest.Create(new Uri(uri));
reqFTP.Credentials = new NetworkCredential(ftpUserID, ftpPassword);