1

在我的 asp.net 网站中,我试图访问一个文件

 FileStream stream = File.Open("/App_Data/" + FileName, FileMode.Open, FileAccess.Read);

我希望此代码在我的网站应用程序数据文件夹中选择一个 xlsxfile。此代码始终从目录中获取整个路径,例如

'c:\App_Data\w1.xlsx

我不希望这段代码用于根 URL。我只想在我的网站中获取文件。我如何修改代码来实现这一点

4

3 回答 3

4

使用Server.MapPath("~/App_Data/" + FileName)而不是"/App_Data/" + FileName

于 2013-07-29T05:33:14.703 回答
3

尝试这个:

File.Open(Server.MapPath("~") + FileName, FileMode.Open, FileAccess.Read);

另请查看此答案,它对 MapPath 有很好的解释

Server.MapPath(".")、Server.MapPath("~")、Server.MapPath(@"\")、Server.MapPath("/")。有什么区别?

于 2013-07-29T05:32:53.440 回答
2

尝试使用

Server.MapPath('~/App_Data/' + FileName)
于 2013-07-29T05:31:42.567 回答