KISSの原則に従って、私は突然次のことに気づきました。
- .NETでは、エンティティモデルフレームワークを使用してデータベースをラップアラウンドできます。
- このモデルは、WCFを介してWebサービスとして公開できます。
- このWebサービスの定義は非常に標準化されています。
- このようなRESTfulWebサービスを利用できるクライアントアプリケーションを作成できます。
私は車輪の再発明をしたくありませんし、誰かがすでにこれを行っていても驚かないので、私の質問は単純です:誰かがRESTfulを消費できる単純な(Webではなくデスクトップ)クライアントアプリケーションをすでに作成しましたか? Entity Frameworkに基づいており、ユーザーがこのサービスに直接データを読み書きできるようにするサービスですか?
そうでなければ、私はこれを自分で「発明」する必要があります。:-)
問題は、データベース層とRESTfulサービスがすでに終了していることです。RESTfulサービスは、その周りに構築されたWebアプリケーションから直接データベースレイヤーアセンブリを使用できるため、開発フェーズ中のみプロジェクトに残ります。Webアプリケーションがデプロイされると、RESTfulサービスはデプロイから除外されます。
しかし、データベースには、50を超えるテーブルを管理するための大量のデータがあります。ローカルデータベースに対して開発する場合、データベースに直接アクセスできるため、このツールは必要ありません。デプロイすると、Webアプリケーションがデータにアクセスする唯一の方法になるため、このツールを使用できませんでした。ただし、データベースがローカルドメイン外の別のシステムに保存されており、このデータベースを開発者が利用できないというテストフェーズもあります。管理者だけがこのデータベースに直接アクセスできるため、テストは少し複雑になります。
ただし、RESTfulサービスを使用すると、データに直接アクセスできます。したがって、一部のテストで問題が発生した場合は、この接続を介してデータを修復するか、ローカルシステムでのテスト用にデータのコピーを作成することができます。他にもたくさんの機能があり、ExcelまたはXMLSpyでテーブルサービスのURLを直接開いて、内容を確認することもできます。しかし、何かを書き戻したいときは、それを行うための特別なコードを書かなければなりません。データにアクセスして変更できる汎用ツールの方が簡単です。これはADO.NETデータサービスに関する一般的なセットアップであるため、これもかなり簡単なはずです。
したがって、私はそれを行うことができますが、他の誰かがすでに同様のことをしていることを望みました。しかし、そのようなツールはまだ作られていないようです...