我有一個很大的vb6/sql數據庫應用程序(數百個表,類和表單),我想遷移到c#,同時具有web,phonegap和winform客戶。有很多的數據庫和商業邏輯的,我想集中,因爲我喜歡ASP.Net MVC作爲我的web用戶界面平臺,我正在考慮以下幾點:這個架構有什麼問題(MVC,Webservices和Winform)
MVC Web項目包括:
- MVC的Web控制器和視圖的Web UI
- MVC控制器服務JSON對象PhoneGap的應用和豐富的HTML頁面
- 服務類,以MVC控制器提供BLL服務
- DAL類提供持久性和POCO對象服務使用/ BLL cla s
- 將服務類暴露給Winform應用程序的Web服務。他們會接受並返回POCO對象
Winform應用程序將嚴重依賴所有數據的Web服務。由於我有數百個數據庫表,Web服務將把這些數據作爲POCO對象(一些嵌套的POCO對象列表)返回給客戶端。我擔心1)WSDL會很大,隨着應用程序的增長和暴露的類的數量增加,它會變得不守規矩(VS VS choke?),2)通過web服務返回POCO對象可能不會很好。我習慣直接從我的winform UI調用SQL服務器,所以通過web服務的前景似乎可能成爲瓶頸,因爲所有事情都被序列化並通過IIS。
順便說一下,我知道服務層與MVC UI層在邏輯上是分開的,但我已經將它們組合起來使部署更簡單。如果它解決了任何問題,我也會考慮WCF,但據我所知,它增加了不必要的複雜性。
這些有效的擔憂?你有其他建議嗎?