大規模なvb6/sqlデータベースアプリケーション(何百ものテーブル、クラス、フォーム)をC#に移行したいと思っています。 、winformクライアント。そこで私は、集中管理するデータベースとビジネスロジックの多くはある、と私は私のWeb UIプラットフォームとしてASP.Net MVCを好むため、私は次のことを検討している:インクルードするこのアーキテクチャには何か問題がありますか(MVC、Webservices、Winform)
MVC Webプロジェクト:
-
永続性とPOCOオブジェクトを提供するために、MVCコントローラへ
- DALクラスをBLLサービスを提供するために、PhoneGapのアプリと豊富なhtmlページ
- サービスクラスにJSONオブジェクトを提供するためのWeb UI用
- MVCのWebコントローラとビュー
- MVCコントローラサービス利用/ BLL CLA sses
- サービスクラスをWinformアプリケーションに公開するWebサービス。彼らはPOCOオブジェクトを受け入れて返します。
Winformアプリケーションは、すべてのデータに対してWebサービスに大きく依存します。私は何百ものデータベーステーブルを持っているので、WebサービスはこのデータをPOCOオブジェクト(いくつかのネストされたPOCOオブジェクトのリスト)としてクライアントに返します。私は、1)WSDLが巨大になり、アプリケーションが増え、公開されるクラスの数が増えると(VSのチョークになりますか?)、2)Webサービスを介してPOCOオブジェクトを返すことがうまくいかない。私はwinform UIから直接SQLサーバーを呼び出すことに慣れているので、Webサービスを経由する可能性は、すべてがシリアル化されIISを経由するため、ボトルネックになるようです。
Btw、私はサービス層がMVC UI層から論理的に離れていることを知っていますが、それらを組み合わせて配置を簡単にしています。私はWCFが問題を解決すればそれも考慮したいと思いますが、私が知る限り、それは不必要な複雑さを加えます。
これらの懸念事項はありますか?他のアドバイスはありますか?