C# 将Web Api项目添加到现有项目

C# 将Web Api项目添加到现有项目,c#,visual-studio-2010,asp.net-web-api,C#,Visual Studio 2010,Asp.net Web Api,我正在开发一个项目,它基于数据库表中的列来显示仪表板 我被告知要创建一个添加到windows窗体项目中的Web Api项目,以获取列数据并将其用于显示图表 我的windows窗体项目是project1,web api是project2 这个想法是当我点击一个表单按钮时,我将显示一个包含图表的html文件。我的想法是,当我按下按钮时,project2将启动,并在project1中收集数据,以显示一个仪表板 如果我思维正确,我的问题是: 单击按钮时如何调用web api 如何将已收集的信息传递给pr

我正在开发一个项目,它基于数据库表中的列来显示仪表板

我被告知要创建一个添加到windows窗体项目中的Web Api项目,以获取列数据并将其用于显示图表

我的windows窗体项目是project1,web api是project2

这个想法是当我点击一个表单按钮时,我将显示一个包含图表的html文件。我的想法是,当我按下按钮时,project2将启动,并在project1中收集数据,以显示一个仪表板

如果我思维正确,我的问题是:

单击按钮时如何调用web api

如何将已收集的信息传递给project2


也许你解释的不对,或者我不明白

看起来您添加了一个Web Api项目作为解决方案的一部分。看起来您在Windows应用程序中有一些数据,然后通过Web Api将这些数据发布到数据库中。如果这是正确的,那么:

WebAPI是以.NETWeb为中心的REST框架,其中HTTP堆栈处于中心位置。在REST中,您在web服务器上运行无状态应用程序,并对其进行调用。REST的美妙之处在于,客户端实际上可以是任何东西——任何设备、任何应用程序、另一个REST服务——任何东西

答案是: 因此,您的Windows应用程序可以调用您的REST层并发布数据。在Windows应用程序中,您需要引用System.Net.Http才能使用HttpClient类。使用此命名空间,您可以编译Http消息、发出Http请求和接收Http响应


我认为,这正是您的解决方案中发生的情况。请让我知道这不是我想的。

当你说通过Web Api发布到数据库时,你的意思是插入到数据库中?在Web Api中,你有控制器。当Http请求被路由到您的控制器和操作[method]时,您可以在那个里做任何您想做的事情,并将其插入到数据库中。好的,我明白了。我还有一个问题,如果可能的话,我如何访问project2中project1的Properties.Resource。这是因为我需要使用的数据在一个json资源中。我一直在寻找,我发现的信息说,我必须引用另一个项目中的一个项目,但我不知道哪一个将被引用,你可以引用,因为最终,web api项目被编译成.dll。但这不是你想做的。如果您有两个项目都使用的资源,则需要将这些资源分离到第三个程序集中,并从两个项目引用该程序集(如果两者使用相同的资源)。您不应该出现Web Api和Windows项目之间存在引用的情况。