35

在 VS 2012 中,我正在尝试使用对 Web API 项目的 jQuery 调用创建一个 MVC 4 Web 应用程序。(其他开发人员将使用我们当前的本机应用程序使用 API,并且将来可能会添加到 API。)所以我有一个项目是 Web API,另一个项目是 MVC 4 网站。我只能设置其中一个运行,它们使用 localhost:xxxxx。

如何调试对两者的更改?例如,假设我添加了一个新的 API 路径 /api/customer/get,然后对该路径进行了一个新的 jQuery ajax 调用,并对生成的 JSON 执行一些操作。我已经更改了两个项目中的代码,并希望端到端地遵循它;我如何启动两者?如何调试两者?

需要明确的是,MVC 应用程序没有对 API 进行服务器端调用,我使用 MVC 主要是为了能够在 .NET 中轻松使用捆绑、缩小和(希望)预编译的 Handlebars 模板;API 调用来自 jQuery。由于我对这些技术还比较陌生,因此欢迎提出其他建议。

先感谢您。

4

3 回答 3

73

我遇到了同样的问题,并从这里找到了解决方案:

论坛.asp.net

解决方法是执行以下操作:

在您的解决方案文件中,单击属性转到启动项目节点(如果尚未选择)

接下来选择多个启动项目。选择您的网站和您的网络服务,并在“操作”列中确保它们都选择了“开始”。

现在,当您调试网站并在 Web 服务中设置断点时,它应该会到达断点。

于 2014-03-19T14:26:51.193 回答
1

聚会迟到了,但万一其他人正在寻找解决方案,这对我来说是最好的:将 Api 项目设置为起始项目(我需要限制为一个启动,以便我可以在浏览器之间切换更多容易地)。启动服务项目后,右键单击 web/ui 项目并选择调试,启动新实例。您将同时运行,并且可以无缝地从 web 过渡到 api。

于 2018-02-26T00:12:22.883 回答
0

我的 web api 项目也有类似的问题。我的解决方案包括一个有角度的前端,后端有 2 个 web api 项目。一个 web api 项目处理“授权”,另一个处理“资源”。我使用 Taiseer Joudeh 的以下教程作为起点:

http://bitoftech.net/2014/09/24/decouple-owin-authorization-server-resource-server-oauth-2-0-web-api/

断点在“授权服务器”上工作......但不在“资源服务器”上。我比较了两个项目的包,看看有什么不同。一旦我将“Microsoft.AspNet.WebApi.Cors”添加到“资源服务器”项目中,断点就开始工作了。

于 2015-01-27T18:22:50.070 回答