2017-08-04 20 views
2

這是一個普遍的問題。 我見過很多項目,他們在asp.net web API項目的同一個項目中添加了Angular 4應用程序或Aurelia應用程序或任何其他前端框架。將ASP.NET Web api與Angular 4或Aurelia混合

這樣做的優缺點是什麼? 如果我以這種方式只爲一個客戶定製。如果我想讓移動應用程序使用相同的restful Web API,該怎麼辦?

加上它真的很難角4集成了asp.net

注意:我說ASP.net 4X,不ASP.net核心。

非常感謝

回答

1
What are the pros and cons of doing that? 

如果你有相同的球隊在兩個工作,它實際上使,如果這是更容易有相同的解決方案有2個項目(一個API和其他的角度(與CLI的選擇))

構建過程也可以更容易。我們可以有相同的最終產品。

what if I wanted to have a mobile application consume the same restful web API? 

應該不是問題。您可以將它們都部署在同一個虛擬目錄中或創建不同的目錄。 API仍然可以被調用,因爲它有自己的URL。

Plus it's really hard to integrate angular 4 with asp.net 

是的,它有點棘手。如果由於VS完全忽略了tsconfig.json文件,因此如果打算爲兩者(API和角度)都設置相同的項目,則已將tsconfig更改爲項目文件XML。你也需要小心的打字稿版本,因爲VS必須使用在它上面安裝了自己版本的傾向

+0

非常感謝,這是非常豐富的! – Willy

1

基本上我總是分裂前端和2個獨立的解決方案後端許多原因:

1 - 如果你想要scale你的應用程序..你可以更細化(也許你只能縮放你的後端...如果你有後端和前端所有在一起,你必須縮放所有)

2 - 您的後端可以serve multiple front end ..因爲它是一個簡單的WebService端點(在RESt中,如果您使用的是WEBAPI)..例如Mobile ..website等等

3 - 如果您未來需要refactoring前端或後端,則更簡單,因爲它們不在同一個解決方案中,尤其是如果您想要更改後端的技術堆棧

4- you團隊可以develop前端和後端separately ..

+0

非常感謝,這是非常豐富的! – Willy

+0

thnx給你! ..希望它可以幫助你 –

2

我強烈建議嚴格拆分東西。將它們混合在一起沒有任何好處,除非初始感覺更安全,但它僅僅是惰性而沒有充分的理由。 幾個月前,我幾乎是在這種情況下,幾乎混合它,但後來決定違揹我目前的安全感,並已完全分開。我對這個決定非常滿意。

爲您的項目提供完全獨立的自己的生活,並在需要時根據需要進行組合。您將以這種方式獲得最靈活的設置。

特別是,這意味着:

  1. 留下你的ASP網頁API的是,只要你想它完全客戶端不可知反正
  2. 讓您與角CLI角應用程序和所有去在通常的角度開發/部署:命令行,的WebPack,碼頭工人,等等...

您可以在此討論,看看有類似的信息: Add Angular 4 to an ASP.NETCore Project

PS。

PS。 不管它的asp.net核心與否都沒關係。它的網頁api,REST風格的服務,以及後端應用程序&。

+0

非常感謝你,這是非常豐富的! – Willy