【问题标题】:Fetching a file filepath on a live website in .NET?在 .NET 中的实时网站上获取文件文件路径?
【发布时间】:2015-04-08 19:11:12
【问题描述】:

我们正在使用 .NET 设计一个网站

该网站有一个文件夹,其中包含一些文件。用户输入文件名,我们必须从该文件中获取数据。在 Visual Studio 中的 PC 上,我们使用 StreamReader,如下所示:

StreamReader sr = new StreamReader("C:\\Users\\UserName\Documents\\Visual Studio 2012\\Projects\\teach\\uploads\\Submission\\" + filename;

但是现在,我们将使用我们的网站,问题是文件路径?我们到底应该给什么?这些文件位于 /compiler/Submission 文件夹中。

【问题讨论】:

  • 您可能希望将文件保存在 Web 文件夹以外的其他位置 - 共享网络驱动器或 AWS 或 Azure 等托管解决方案可能会更好,原因有很多。

标签: c# asp.net .net web-deployment


【解决方案1】:

使用Server.MapPath

可能是这样的

var yourPath = Server.MapPath("~/uploads")

~ 被替换为 .NET 作为虚拟目录的根目录。

【讨论】:

  • 谢谢,我试试看
【解决方案2】:

您不能直接使用驱动器位置访问文件。

试试 假设您的实时网站为www.mydomian.com,您可以查看该文件 作为

www.mydomian.com\uploads\myfile.txt

然后使用:

StreamReader sr = new StreamReader(@"www.mydomian.com\uploads\" + filename);

Daniel A. White's solution

var yourPath = Server.MapPath("~/uploads/"+filename)

【讨论】:

  • 谢谢,我试试看
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2016-01-14
  • 2018-12-11
  • 1970-01-01
  • 1970-01-01
  • 2017-02-20
  • 2013-04-24
  • 1970-01-01
相关资源
最近更新 更多