c# - 如何获取.net核心项目中项目文件夹中存在的文件的相对路径
问题描述
我想获取项目文件中的文件路径。
我试过
var path = @"Helper\automationJson.json"
但这从bin/debug
as获取文件C:\AutomationActivityTrace\bin\Debug\netcoreapp2.2\Helper\automationJson.json
也试过
string path = Path.Combine(AppDomain.CurrentDomain.BaseDirectory, subfolder name, filename);
还有更多,但我没有得到我想要的。
我需要路径C:\AutomationActivityTrace\Helper\automationJson.json
谁能帮忙?!
解决方案
假设:您的应用程序需要读取此特定文件,并且该文件在构建时存在。
bin
作为构建的一部分,您需要将其复制到该文件夹中。这是在您的csproj
文件中使用CopyToOputputDirectory
.
例如:
<Project Sdk="Microsoft.NET.Sdk">
<!-- other stuff -->
<ItemGroup>
<None Include="Helper\*.json">
<CopyToOutputDirectory>Always</CopyToOutputDirectory>
</None>
</ItemGroup>
</Project>
现在,当您构建项目时,例如使用dotnet build
,您应该在C:\AutomationActivityTrace\bin\Debug\netcoreapp2.2\Helper\automationJson.json
然后涉及的解决方案AppContext.BaseDirectory
应该找到该文件,例如Path.Combine(AppContext.BaseDirectory, "Helper", "automationJson.json")
推荐阅读
- python - discord.py JSON 类型错误
- dialogflow-es - 如何让 Dialogflow 说出我对云运行 webhook 的响应?
- android - 如何使 ExpandableListView 在 ScrollView 内滚动而不是在其自身上滚动?
- node.js - 查找 mongo db 中的正则表达式/管道
- mysql - 将网络共享用于数据目录时,MySql docker 容器未启动
- python-3.x - Python 不能使用构造函数中的值
- angular - .netCore api每次从Angular的前端部分获取相同的参数给控制器
- python - python中的{!s}和{:s}有什么区别?
- python - 使用二维数组创建关卡
- python - 打印每个字符并添加直到句子完成?