C# 找不到路径的一部分

C# 找不到路径的一部分,c#,xml,iis,directory,xmldocument,C#,Xml,Iis,Directory,Xmldocument,好的,在我说其他任何事情之前,让我注意到,我知道这已经被问了很多次了。然而,我已经在互联网上搜索过了,还没有找到一个解决我的特殊情况的方法 我正在尝试获取一个XmlDocument对象并将其保存到网络驱动器。当我尝试将其保存到本地C驱动器时,它工作得非常好,但是当我尝试将其保存到网络驱动器时,无论是在本地测试还是从IIS7 web服务器测试,都会出现错误“找不到路径V:\Test\DocName.xml的一部分”。下面是我用来尝试和实现这一点的代码: using (var stream = ne

好的,在我说其他任何事情之前,让我注意到,我知道这已经被问了很多次了。然而,我已经在互联网上搜索过了,还没有找到一个解决我的特殊情况的方法

我正在尝试获取一个XmlDocument对象并将其保存到网络驱动器。当我尝试将其保存到本地C驱动器时,它工作得非常好,但是当我尝试将其保存到网络驱动器时,无论是在本地测试还是从IIS7 web服务器测试,都会出现错误“找不到路径V:\Test\DocName.xml的一部分”。下面是我用来尝试和实现这一点的代码:

using (var stream = new FileStream(Path.Combine(@"V:\Test", doc.DocumentElement.Name + ".xml"), FileMode.Create, FileAccess.Write))
    doc.Save(stream);

当然,doc是一个XmlDocument。我已经双重和三次检查了我对该目录的权限,并且我知道它存在并且没有隐藏或其他任何东西。有什么想法吗?

AFAIK驱动器映射是按用户进行的。更多信息请参阅

这意味着,如果VisualStudio不是在与映射相同的帐户下运行,它将找不到它

此外,IIS可能是在另一个“用户”下运行的。同样如此。

来自

驱动器映射是net use命令的扩展,并且是基于每个用户创建的。也就是说,驱动器映射项存在于映射到网络驱动器的用户的Hkey_Current_用户注册表项下。此外,驱动器映射是使用当前登录的用户的凭据创建的

由于.NET网站在应用程序池中运行,并且与帐户(通常是服务帐户)关联,因此它无法识别任何驱动器映射


在.NET应用程序中,建议使用UNC路径而不是驱动器映射。

并且V是服务器上的映射网络驱动器?目录测试是否存在?是的,我相信这是正确的是的,测试是否存在我已远程访问您的web服务器,并确保它正确映射了V驱动器。如果打开Windows资源管理器,单击地址行并粘贴:“V:\Test\”,会发生什么情况?它打开那个目录了吗?