C# 如何从本地目录获取 URL 路径

3
这是我的程序: 我正在将一张图片(流、文件信息或其他任何你喜欢的方式)上传到这个虚拟目录下的服务器:"C:\_Resources\Assets"。
但是,我希望服务器返回该图片的URL路径,以便在标签中显示它
实际上,我正在尝试做与Server.MapPath方法相反的事情。
请问我该如何得到它?
谢谢。

你的问题的解决方案将非常依赖于服务器 - 在Apache中实现这一点的正确方法将与IIS不同,而这两者又会与纯Windows文件共享有所不同。如果你需要帮助,请提供足够的信息让我们能够帮助你!谢谢。 - Bevan
1
你需要一个 UNC (\\server\share\path\file) 吗?还是一个 URL (http://server/path/file)? - Roger Lipscombe
3个回答

2

url = "\\" + Environment.MachineName + Path.GetFullPath(document.FileName).ToString().Split(':')[1];

意思是:将计算机名称和文件名的绝对路径组合成一个 UNC 路径。在这个路径中,双反斜杠表示计算机名称,后面跟着文件路径。


在远程使用时,这并没有考虑共享名称。 - Maslow

1
为什么不直接创建一个字符串,然后将 "C:_Resources" 替换为 "/Trunk" 呢? 可能不是最理想的方法,但应该可以让您继续进行。

0
string file = "\\\\" + someServer + "\\" + someFile;
file = file.Replace(":\\","$\\");

而且,如果你不想使用那些愚蠢的转义字符...

string file = @"\\" + someServer + @"\" + someFile;
file = file.Replace(@":\",@"$\");

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接