2013-08-25 33 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

相關問題