我想在我的项目中添加一个config.json
文件,并从文件中读取一个类。
我在VS中添加了该文件并添加了Build Action
= Content
和Copy to output directory
= Copy always
属性。
构建时,文件将复制到C:\...\mysolution\myproject\bin\Debug
。
但是File.ReadAllText(@"config.json")
会抛出FileNotFoundException
。
Path.GetDirectoryName(Assembly.GetExecutingAssembly().Location);
不会返回复制文件的文件夹:
C:\\Windows\\Microsoft.NET\\Framework\\v4.0.30319\\Temporary ASP.NET Files\\root\\2158bea8\\d46fc01c\\assembly\\dl3\\eca14761\\49a747bf_be72d001
答案 0 :(得分:2)
“\ config.json”将从ROOT读取,请尝试“config.json”
答案 1 :(得分:0)
正如史蒂夫所说,你需要使用" config.json",这将从exe或应用程序所在的位置读取。
因此,您需要告诉VS在构建时将此文件复制到输出目录,执行以下操作:
右键单击VS>中的文件;属性>设置"复制到输出目录"到"始终复制"