我想读取 json 文件以提供自适应卡片,但我缺少如何获取文件的路径。 就像我的 wwwwroot 文件夹中有一个 card_a.json 文件一样。
public async Task<string> GetCardText(string cardName)
{
var path = $"/wwwroot/{cardName}.json";
if (!File.Exists(path))
return string.Empty;
using (var f = File.OpenText(path))
{
return await f.ReadToEndAsync();
}
}
我试了$"/wwwroot/{cardName}.json"
,$"/{cardName}.json"
和$"{cardName}.json"
,都没有奏效。
我已经阅读了这篇文章,但没有帮助,示例在这里失败:
var path = HostingEnvironment.MapPath($"/Cards/{cardName}.json");
出现错误:托管环境不包含 MapPath 的定义。使用 System.Web 添加并不能解决此问题。VS说添加这个是不必要的。
cardname.json 文件是否需要驻留在 wwwroot 文件夹中?您可以通过将它们存储在应用程序根目录或其子文件夹中来节省大量权限和路径问题。