私は&を実装したデータ公開メソカリズムを実装しているアプリケーションで作業しています。これは、アプリケーションの1つのマスターインスタンスが多くのサブスクライバインスタンスにデータを供給できるようにします。これは、サブスクライバのスキーマと全く同じスキーマを持つ一時インポートテーブルのセットにマスタのデータをロードすることによって実装されます。マージプロセスは、これらのインポートテーブルを使用して作業を行います。NHibernate - 同じエンティティを多くのテーブルにマッピングする
この全文はうまくいきます。バッチロードのためにADO.NETを使用してNHibernateの外部で実行され、&のマージのためのストアドプロシージャのセット(カスタムツールによって自動生成されます)。また、マスタ/サブスクライバ間でHTTPリンクを使用してデータをダウンロードすることもできます。マスターSQLサーバーに直接接続することはできません。
私が直面する問題は、実際に新しいデータをマージする前にdiffをユーザーに視覚的に示すことです。このアプリケーションでは、NHibernateにこれらの一時インポートテーブルからビジネスオブジェクトを直接ロードさせたいと思います。 これを行うことはできますか?ほとんど同じマッピングファイルを2セット保有する必要はありませんか?
最後のバージョンでは、これらのインポートテーブルからロードするカスタムコードを使用してビジネスオブジェクトを構築していました。それは単純なプロパティをロードするだけで、リレーションを処理することはありません。これはコーディング/保守の観点から大きな時間を浪費します。