0

我试图让我的 .Net 网站读取显示其所在计算机状态的文本文件中的第一行。如果我删除 Server.MapPath,我会得到旧的“Server.MapPath - 给出的物理路径,预期的虚拟路径”,它修复了服务器上的问题,但随后客户端计算机上出现错误,因为它似乎正在尝试访问客户端 PC 上的文件。这是片段:

        StreamReader StreamReader3 = new StreamReader(Server.MapPath(@"C:\\status\\status.txt"));
        TextBox2.Text = StreamReader3.ReadLine();
        StreamReader3.Close()

我知道我可能可以通过将调用的文件移动到与网页相同的文件夹来解决问题,并让我的服务器端程序在那里更新文件,但是有没有办法做到这一点?谢谢。

4

1 回答 1

0

MapPath 将从 ~ 开始的路径转换为完整的本地路径。看起来您的代码中不需要它。

如果文件要一直在固定的地方,直接用全路径打开。

如果它是相对于站点根目录的,则使用类似 Server.MapPath("~/status.txt")

于 2013-08-16T15:34:29.237 回答