为了账号安全,请及时绑定邮箱和手机立即绑定

ASP.NET Core 在调试时读取内容文件

ASP.NET Core 在调试时读取内容文件

C#
跃然一笑 2022-11-21 21:49:57

我有一些 json 文件需要从我的 asp.net 核心应用程序中读取。它们位于名为 data 的文件夹下

--MyProject
---Startup.cs
---Data
------dataset1.json
------dataset2.json

我正在使用 IHostingEnvironment ContentRootPath 来读取文件:

 string pathToFile = hostingEnvironment.ContentRootPath
                            + Path.DirectorySeparatorChar
                            + "Data"
                            + Path.DirectorySeparatorChar
                            + "dataset1.json"

返回C:\SourceControl\Test.Backend\src\Test.Web\Data\dataset1.json

当我在 IIS 中发布我的代码时,这工作正常。但是,当我调试时,文件被复制到 bin 文件夹中,上面的代码不起作用。如何在调试时读取文件?


查看完整描述

1 回答

?
潇湘沐

TA贡献1527条经验 获得超6个赞


#if DEBUG


 string pathToFile = hostingEnvironment.ContentRootPath

                        + Path.DirectorySeparatorChar

                        + "bin"

                        + Path.DirectorySeparatorChar

                        + "Data"

                        + Path.DirectorySeparatorChar

                        + "dataset1.json"


#else


string pathToFile = hostingEnvironment.ContentRootPath

                        + Path.DirectorySeparatorChar

                        + "Data"

                        + Path.DirectorySeparatorChar

                        + "dataset1.json"


#endif

当您处于调试模式和使用这种方法进行生产时,您可以有两条不同的路径。只需根据您的需要更改第一条路径


查看完整回答
反对 回复 2022-11-21
  • 1 回答
  • 0 关注
  • 8 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信