【问题标题】:Read file from virtual directory that is poiting to a file server从指向文件服务器的虚拟目录中读取文件
【发布时间】:2021-09-29 03:01:10
【问题描述】:

我在 IIS 上托管一个 asp.net 网站,我创建了一个虚拟目录,该目录指向我存储文件的另一台服务器。

如果我输入浏览器网址,例如:

http://10.10.10.10/files/01/1111/name%20of%20file%20.pdf,文件打开。

如何使用 c# 读取文件

【问题讨论】:

    标签: asp.net iis


    【解决方案1】:

    这是如何工作的?

    code behind = plane jane full windows path name.

    任何网页 - 格式正确的 URL。

    所以,您将该虚拟文件夹映射到一个平面简完全合法的 Windows 路径名。

    因此,您的代码始终使用标准的 Windows 路径名。

    因此,您必须将给定的 URL 路径名称转换为内部。

    所以,假设你有这个:

      http://10.10.10.10/files/01/1111/nameoffile.pdf
    

    你就这样走了

    string MyURL = "http://10.10.10.10/files/01/1111/nameoffile.pdf";
    
    string MyWindowsFilePath = Server.MapPath(MyURL);
    

    此时,MyWindowsFilePath 将是映射虚拟文件夹的完整平面简窗口路径名。

    这样你就可以走了:

    bytes[] MyBinFile;
    MyBinFile = File.ReadBinaryFile(MyWindowsFilePath);
    

    所以,一个简单的规则就是记住任何网页表达式——它们都是基于 URL 的。但是后面的任何代码都使用平面简窗口文件名 - 后面的代码与编写桌面代码并没有什么不同。

    因此,Server.MapPath() 会将 URL 路径转换为该飞机简良好的老式 Windows 文件路径名。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多