ASPx上载控件不将文件保存在正确的位置

时间:2011-06-08 14:07:47

标签: asp.net upload controls

我的上传控件将文件保存到Web服务器上的映射网络驱动器。即使我对路径进行硬编码,它仍然会将文件保存在映射网络驱动器的根目录中。

以下是我上传的代码......

protected void ASPxUploadControl1_FileUploadComplete(object sender, DevExpress.Web.ASPxUploadControl.FileUploadCompleteEventArgs e)
    {
        if (e.IsValid)
        {  
            string uploadDirectory = "//DOCSD9F1/TECHDOCS/";

            string fileName = e.UploadedFile.FileName;

            string path = "T:/Manuals/";

            e.UploadedFile.SaveAs(path + fileName);
            e.CallbackData = fileName;
        }
    }

在Web服务器上,映射的网络驱动器用作托管某些文档的索引,IIS上的路径是// DOCSD9F1 / TECHDOCS / ...但是在Windows资源管理器中它是T:/ ..我有尝试将其中的每一个硬编码到路径名中,但文件仍保存到根T:/目录而不是我给它的子目录..

文件夹不像我先假设的那样是只读的,所以我被困在这里

2 个答案:

答案 0 :(得分:1)

您是否尝试使用反斜杠而不是斜杠:

string uploadDirectory = @"\\DOCSD9F1\TECHDOCS";
...
e.UploadedFile.SaveAs(Path.Combine(uploadDirectory, fileName));

对于本地路径,请使用反斜杠。对于URL,请使用斜杠。

另请注意,您的Web应用程序通常在系统帐户下运行,其中映射的网络驱动器(如“T:\”)不可用(这些可供登录用户使用)。

答案 1 :(得分:0)

使用反斜杠,例如“\\ DOCSD9F1 \ TECHDOCS”。