使用FileWebRequest将新文件上载到文件共享

时间:2013-07-09 20:35:56

标签: c# file-upload

我正在尝试使用C#的FileWebRequest在文件共享上创建一个新目录,并将一个新文件上传到该目录。有谁知道这是否可行?

如果新文件直接位于文件共享中,我可以成功上传新文件,但是当我尝试将其上传到新目录中时,我会遇到异常。

例如,将 newfile.txt 上传到此位置可以正常工作: \\服务器\共享名\ newfile.txt

但如果我尝试将其上传到此位置: \\ servername \ sharename \ newfolder \ newfile.txt'。

...然后我得到一个例外:无法找到路径\\ servername \ sharename \ newfolder \ newfile.txt'的一部分。

背景:

我有一个需要生成文件并将其复制到文件共享的Web服务。出于安全原因,Web服务模拟发起生成请求的特定用户,并且需要使用这些(委派的)模拟身份将文件复制到共享。

显然将模拟的用户身份从Web服务委派给文件系统不能按原样运行,所以相反,我试图使用FileWebRequest使用共享的URI上传文件,所以我可以使用AuthenticationManager.CustomTargetNameDictionary注册文件服务器的SPN,以便实现委派。

编辑:我目前正在使用FileWebRequest上传文件:

var uploadRequest = (FileWebRequest)WebRequest.Create(@"file://servername/sharename/newfolder/newfile.txt");
//...snip
using (var outputStream = uploadRequest.GetRequestStream())
{
    outputStream.Write(buffer, 0, buffer.Length);
}

0 个答案:

没有答案