如何在ASP.NET WebApi应用程序中将文本文件用作本地资源文件?

时间:2017-01-18 18:58:44

标签: asp.net .net asp.net-web-api projects-and-solutions

我有一个小的WebApi项目,从这个项目中我想加载一个包含一些信息的资源JSON文件。在我的项目中,我创建了一个名为Resources的文件夹,在这个Resources文件夹中我添加了一个data.json文件。

我想知道如何在项目中使用此data.json文件。我做了some reading并且无法找到将此资源文件放在与我的二进制文件相同的目录中的 BuildAction ,因此我可以使用它。

我想做这样的事情:

string json = File.ReadAllText(@"..\Resources\data.json");

但是,如果我这样做,我会得到这个例外:

  

“无法找到路径'C:\ Program Files的一部分   (86)\资源\ data.json”“。

我对ASP.NET知之甚少,但有没有办法可以实现这一目标?

1 个答案:

答案 0 :(得分:0)

这不是您要设置的构建操作,而是复制到输出目录'你想要设置为“永远'或者'当更新的时候。这会将其复制到bin文件夹下的资源文件夹中。然后,为了获取数据,您将使用Url.Content("〜/ bin / resources / data.json"),假设您在控制器中。这应该妥善解决。

如果这些数据没有变化,另一个选择是将其作为嵌入式资源,然后将其合并到网站的dll中。