如何使用asp.net C#将目录从本地驱动器复制到共享网络

时间:2014-06-10 06:30:52

标签: c# asp.net

您好我正在尝试将目录及其子目录从我的D驱动器复制到共享网络,但我继续收到错误

例外:

  

无法找到路径的一部分'/Projects/08.ASP.NETProjects/ProjectName /'.

我的C#复制代码:

 System.IO.DirectoryInfo directory = new System.IO.DirectoryInfo(D drive path);
 var destinationpath = "file:///BZ0025BZV43/Projects/08.ASP.NETProjects/ProjectName/";
 var uri = new Uri(destinationpath);
 var destinationurl = uri.AbsolutePath;
 foreach (System.IO.FileInfo mydirectory in directory.GetFiles())
 mydirectory .CopyTo(destinationurl);

我是FileHandlers的新手。请帮忙。

1 个答案:

答案 0 :(得分:0)

尝试使用uri.LocalPath代替uri.AbsolutePath

另外,请注意您正在尝试将文件复制到目录中。但是您必须将文件复制到该目录的另一个文件中。 (目录也是文件,基本上)。

这样做是为了检查目标目录是否存在并在必要时创建它。然后将.copyTo(destinationUrl)替换为.copyTo(Path.Combine(uri.LocalPath, mydirectory.Name)),您应该好好去。请将变量mydirectory重命名为file或类似的内容。

另请注意,您不是递归复制目录树。因此,如果要递归树,则必须检查子目录并复制该层次结构中的文件。

您还可以查看此示例:http://msdn.microsoft.com/de-de/library/bb762914(v=vs.110).aspx