由于项目使用了负载,所以有这样的需求,需要把文件保存到同一个服务器下,然后去指定的服务器读取文件。
我经过了一些搜索,找到了2个办法来实现。一种是使用共享文件夹的方式,还有一种是使用FTP协议去传输文件。
下面先记录下使用共享文件夹的方式。
首先,在指定服务器下,创建共享文件,名称为Share,把它共享给所有人,读写权限。
然后,代码如下:
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.IO;
using System.Diagnostics;
namespace MB.Cloud.PosService.ServerBiz.Basic.Base
{
public class ShareFileHelper
{
public void Execute()
{
bool status = false;
//连接共享文件夹
status = connectState(@"\\10.100.20.122\Share", "用户名", "密码");
if (status)
{
//共享文件夹的目录
DirectoryInfo theFolder = new DirectoryInfo(@"\\10.100.20.122\Share");
//相对共享文件夹的路径
string fielpath = @"\123\456\";
//获取保存文件的路径
string filename = theFolder.ToString() + fielpath + "1.jpg";
string filePath = @"C:\Users\hq01ub721\Desktop\临时\";
//执行方法
Transport(filename, filePath, "3.jpg"); //这是从共享文件夹读取文件到本地
}
else
{
//ListBox1.Items.Add("未能连接!");
}
Console.ReadKey();
}
public static bool connectState(string path)
{
return connectState(path, "", "");
}
/// <summary>
/// 连接远程共享文件夹
/// </summary>
/// <param name="path">远程共享文件夹的路径</param>
/