c#不支持给定路径的格式。 UNC路径

时间:2017-04-18 15:05:24

标签: c# remote-server

我正在尝试从远程服务器访问和下载bak文件并继续收到错误"不支持给定路径的格式。" 我在下面使用的代码:

string uncPath = Server.MapPath(Path.Combine(@"\\TSTSVR\Users\temp_databaseBackups_000kfkf000", 
  string.Format("{0}-{1}.bak", ddlDatabases.SelectedValue, DateTime.Now.ToString("yyyy-MM-dd"))));

//download
WebClient webClient = new WebClient();
webClient.DownloadFile(uncPath, ddlDatabases.SelectedValue + "-" + DateTime.Now.ToString("MM-dd-yyyy:hh:mm"));

我在DownloadFile行收到错误。我是否宣布UNC路径错误?该文件夹位于服务器上,我使用写权限设置对Everyone的访问权限。

2 个答案:

答案 0 :(得分:0)

在你正确方向的一些提示的帮助下,我用以下代码解决了这个问题:

string uncPath = Path.Combine(@"\\TSTSVR\Users\temp_databaseBackups_000kfkf000",
  string.Format("{0}-{1}.bak", ddlDatabases.SelectedValue, DateTime.Now.ToString("yyyy-MM-dd")));

//download
Response.ContentType = "bak";
Response.AddHeader("Content-Disposition", "attachment;filename=\"" + ddlDatabases.SelectedValue + "-" + DateTime.Now.ToString("MM-dd-yyyy:hh:mm") + "\"");

Response.TransmitFile(uncPath);
Response.End();

程序现在将从远程服务器下载文件需求。

答案 1 :(得分:-1)

如果远程计算机在Windows控制下工作,则路径中不允许冒号。