大規模な vb6/sql データベース アプリ (数百のテーブル、クラス、およびフォーム) を、Web、phonegap、および winform クライアントの両方で c# に移行したいと考えています。一元化したいデータベースとビジネス ロジックがたくさんあります。Web UI プラットフォームとして ASP.Net MVC を好むので、次のことを検討しています。
含める MVC Web プロジェクト:
- Web UI の MVC Web コントローラーとビュー
- JSON オブジェクトを phonegap アプリとリッチ html ページに提供する MVC コントローラー
- MVC コントローラーに BLL サービスを提供するサービス クラス
- サービス/BLL クラスで使用する永続性と POCO オブジェクトを提供する DAL クラス
- Service クラスを Winform アプリに公開する Web サービス。彼らはPOCOオブジェクトを受け入れて返します
Winform アプリは、すべてのデータを Web サービスに大きく依存します。私は何百ものデータベース テーブルを持っているので、Web サービスはこのデータを POCO オブジェクト (いくつかはネストされ、いくつかは POCO オブジェクトのリスト) としてクライアントに返します。1) WSDL が巨大になり、アプリが成長し、公開されるクラスの数が増えると、手に負えなくなる (VS がチョークするのでしょうか?)、2) Web サービスを介して POCO オブジェクトを返すと、うまく機能しない可能性があるのではないかと心配しています。 . 私は自分の winform UI から SQL サーバーを直接呼び出すことに慣れているので、すべてがシリアル化されて IIS を通過するため、Web サービスを通過する可能性がボトルネックになる可能性があるようです。
ところで、サービス レイヤーが MVC UI レイヤーから論理的に分離されていることはわかっていますが、デプロイを簡単にするためにそれらを組み合わせました。問題が解決した場合は WCF も検討しますが、私が知る限り、不要な複雑さが追加されます。
これらは正当な懸念ですか?他にアドバイスはありますか?