如何在c#中将物理路径转换为虚拟路径

本文关键字:路径 转换 虚拟 | 更新日期: 2023-09-27 18:16:39

我想将文件存储在D盘

 string fileName = Path.Combine(Server.MapPath(@"D:'Files"), File_Video.FileName);

如何将其转换为虚拟路径

如何在c#中将物理路径转换为虚拟路径

我不确定你的代码样本显示了什么。Server.MapPath使用虚拟路径作为参数,不使用物理路径。如果您希望filename包含物理路径,则只需执行以下命令:

string fileName = Path.Combine(@"D:'Files", File_Video.FileName);

如果你想知道如何获得d:'files的虚拟目录(例如,这样你就可以链接到那里的东西),那么这就更难了,因为不一定有任何映射。通常要访问这些文件,您要么设置一个指向该物理路径的虚拟目录,并将其硬编码到您的链接中。否则,您可以创建一个代理页面,作为文件的代理。这样做的好处是能够进行安全检查,例如确保只有登录用户才能访问它们等(因为视频很大,如果他们知道正确的url,你可能不希望整个互联网都能够访问它)。

我希望这能解决你的问题。如果不是,你能说明你的问题是什么吗?

Server.MapPath()基本上在您有一个虚拟路径时使用。对于物理路径,可以直接使用Path.Combine(param1,param2)

希望这对你有帮助!