Web API如何在同一解决方案中从另一个项目中访问项目列表?

时间:2017-02-09 16:57:10

标签: c# .net visual-studio ide

对于冗长的道歉,我是Web API的新手。请允许我提供一些背景知识。我有一个包含三个项目的解决方案:具有SQL实体框架的存储库,控制台应用程序和MVC Web API。我的存储库查询SQL,将该数据提供给控制台应用程序,控制台应用程序从原始SQL数据输出计算列表。我现在希望能够通过Web API将该列表推送到我的localhost。我有Web API从测试存储库中将数据推送到localhost浏览器,其中包含一组测试数据(这些数据没有计算,我只是制作了一个静态数组,看看我是否可以提取任何东西),并且它工作得很好。但是当我尝试从控制台应用程序中获取输出列表并将其提供给我的测试存储库然后将数据推送到数据时,数据无法通过。我在整个程序集中提供了输出列表,因此我可以从Web API访问控制台应用程序列表。

有什么想法吗?

由于

1 个答案:

答案 0 :(得分:1)

听起来我需要重新调整你的项目。我建议重构代码,以便项目如下:

  • 存储库项目:这将与您的数据库通信,并负责从您的数据库中检索数据。
  • 应用程序项目:它引用您的存储库项目并执行当前在您的控制台应用程序中完成的计算。
  • 控制台应用项目:这是您的控制台应用代码。它引用了您的Application项目,除了从Application项目请求计算结果,然后将结果输出到控制台。
  • MVC WebAPI项目:这也只是引用您的Application项目。您的WebAPI Web服务调用将从您的Application项目请求计算结果,然后将其返回给调用者。

这对您来说更容易管理。此外,您可以轻松地单元测试执行计算的Application项目类方法。