2017-02-09 3 views
0

Legacy1New1という2つのWebアプリケーションがあります。私はアプリケーションと別のデータベースの両方に別々のDbContextを持っています。コンソールアプリケーションを使用して2つの異なるSQL Serverデータベースからデータを移行する

Legacy1データベースからNew1データベースにデータを移行したいとします。 SQL Serverで単にcopy databaseまたはexport databaseオプションを使用することはできません。エンティティは異なるため、データの移行中にいくつかのロジックを組み込む必要があります。

私はこれを行うために.Net Core Console(.Net Framework)プロジェクトを使用することに決めました。このプロジェクトにDbContextsの両方を追加する必要がありますか?また、私がマッピングして移行したいエンティティ、またはこれを達成する他の方法もあります。

答えて

0

私はそれを達成するための簡単なアプローチを見つけました。私はsourcetargetデータベースのファイルedmxを生成するためにEF DB Firstアプローチを使用しました。これにより、対応するEntitiesにもアクセスできます。

Iソースdbcontextを使用してクエリされたソースデータベースと要件ごとに操作されたデータがあり、ターゲットdbcontextを使用してターゲットデータベースに挿入されます。私はsourceエンティティをTargetエンティティにマップするのにAutoMapperを使用しました。

これまでの考えよりはるかに簡単でした。似たようなシナリオを持つ他の人に役立つことを願っ

関連する問題