在ASP.Net项目中使用文件

时间:2017-02-27 10:35:06

标签: c# asp.net file

我是ASP.Net的新手,我想在我的目录中访问几个JSON文件。在我正常的Visual Studio项目中,我可以将这些文件存储在/ bin / debug中,我在哪里存储这些文件?我听说你有" App_Data"但我不明白我将如何配置它。

我试过了:

string JsonString = File.ReadAllText("~/App_Data/" + filename); (stored file under self created App_Data map in Project/Project/)
string JsonString = File.ReadAllText(filename);

错误: enter image description here (我确实意识到它说我应该存储它,但是不是有更好的方法将这些文件存储在我的项目中吗?)

1 个答案:

答案 0 :(得分:1)

在.Net Core中,我使用IHostingEnvironment来获取应用程序的根路径。然后你可以像Path.Combine(_hostingEnvironment.ContentRootPath, "myfolder", filename)那样思考以获取文件的路径。然后,您可以File.ReadAllText使用该路径。

要获取IHostingEnvironment,您必须在构造函数中将其添加为参数:

private readonly IHostingEnvironment _hostingEnvironment;

public MyController(IHostingEnvironment hostingEnvironment)
{
    _hostingEnvironment = hostingEnvironment;
}