2013-08-25 26 views
3

我试图从另一个ASP.NET经典项目(实际上它是本机JS和Html Web应用程序)使用Web API服务。 如何配置这些这两个分开的项目在VS2012上彼此交谈?将应用程序设置为单独的Web API项目和ASP.NET应用程序

最终的结果将是:

http://localhost:8080/api/products 

将被路由到位于的WebAPI项目的ProductsController返回的产品(JSON)的列表,

http://localhost:8080/index.html 

会被路由到此页面的第二个项目 - 本地HTML/JS项目。

如何在这两个项目中配置逻辑到物理目录? 谢谢!

+0

那么,谁来调用API呢? JS或ASP.NET服务器端代码? – Aliostad

+0

JS来自解决方案中的单独项目。 – Tomer

回答

8

事实证明这很简单。 所有我必须做的就是配置这些两个项目共享的本地IIS的同一端口:所以 为本地JS/HTML(我的第二个项目)我使用:

Project for the native JS/HTML - Has nothing to do with .NET!

而第二个项目( WEB-API项目):
enter image description here

就是这样! 现在,JS可以使用Web-Api!

1

您只需要一个项目:ASP.NET Web API。我会将index.html放在脚本或js文件夹下的根目录和javascript文件中。

通常,静态内容(如js和html)可由ASP.NET Web API项目中的IIS直接提供。您需要确保您添加它们以忽略启动时的规则:

RouteTable.Routes.IgnoreRoute("*.js"); 
RouteTable.Routes.IgnoreRoute("*.html"); 
+0

感谢您的重播,但您似乎无法理解我的问题。我的第一句话特别提到我需要使用服务,就好像我不能有一个项目(当然这可以达到这个目的 - 这是默认的..)。 – Tomer

相关问题