asp.net-core - 如何在 .NET Core 解决方案中访问另一个项目的根文件夹?
问题描述
我需要appsettings.json
从我的解决方案中的另一个项目中读取设置文件 ( )。当我使用:
Directory.GetCurrentDirectory()
从当前项目中,我得到以下路径:
{projectRootFolder}\bin\Debug\netcoreapp3.0\
我的问题是:如何在同一解决方案中访问另一个项目中的完全相同的文件夹?还是有更好的方法从当前解决方案中的另一个项目访问设置文件?
解决方案
如果我正确理解了这个问题,就会有两个误解:
访问另一个项目的输出目录几乎没有意义,因为该结构仅在编译时才有意义。一旦应用程序“发布”,您将不会在运行时拥有相同的结构。
返回当前
Directory.GetCurrentDirectory()
工作目录。被Visual Studio设置为项目输出目录只是一个巧合。它可以是完全不同的目录。
我不清楚你到底想要达到什么目的。我建议使用 .net core 提供的配置系统来访问配置并将其他 appsettings.json 添加为另一个配置提供程序。
如果您确实需要打开设置文件,那么带有设置文件(A)的项目应该将该文件标记为“复制到输出目录”,并且打开文件的项目(B)应该引用项目A。所以设置文件也将被复制到项目 A 的输出中。
推荐阅读
- java - 在地图中的自定义对象中获取二维数组
- mysql - SQL Management Studio - 让我的光标更高效?
- python-3.x - 使用 GCP Dataflow 和 Apache Beam Python SDK 从 GCS 读取速度非常慢
- java - 如何知道一个arraylist是否包含一个或多个对象以及如何在Java中对该数组中所有对象的值之一求和?
- .net - 测试日志记录的最佳方法?
- c - 如何将新的有序节点插入双链表?
- javascript - PHP响应空白回到ajax按钮按下
- php - 预匹配返回空数组
- r - 删除不遵循 r 中日期序列的事件
- python - OSError:[Errno 13] 尝试运行 python3 -m pyftpdlib -p 21 时出现权限被拒绝消息