この問題についてアドバイスをお願いします。ADO.NET
データ アクセスにクラシックを使用するソリューションがあります (4 年以上前のものです)。データ アクセス アーキテクチャは、CRUD 操作の既定の実装を持つ、たとえば (名前は実際には問題ではありません).NET 2.0.
から継承される単純なクラスです。FooDataBaseObject
私たちのプロパティはカスタム属性でマークされています(テーブル内のそれぞれの列の名前など、必要なデータを保持しています)。また、データクラスと同じです(カスタム属性は、テーブル名などを指定するために使用されます)。
エンティティ間の関係は、特別な .xsd および .xml ファイルで指定されます。テーブル自体に外部キーやその他の典型的な制約が含まれることはめったにありません (実際にこのテーブルを継承していますが、顧客はまだインポート エンジンとエクスポート エンジンを使用しているため、変更を禁止しています)。しかし、データベースをリファクタリングするよう人々を説得できると確信しています。
問題は既存のサービスにあります。古い ado.net サービスを使用する可能性がある EF を導入する方法はありますか? 私は現在、エンティティを生成したり、特定のクラスを継承したりする必要がないため、EFコードファーストDbContext
アプローチを使用するというアイデアを検討しています.既存のデータベース。また、古いデータ クラスのミラーリングクラスを作成する方法もおそらくあるでしょう。Customer
->と言うCustomerEntity
。CustomerEntity
andのすべての必要なプロパティを反映し、andCustomer
で使用されるため、新しいサービスで使用し、古いサービスのみで使用できます。DbContext
DbSet
CustomerEntity
Customer
このアプローチの潜在的なボトルネックと、これの可能性 (これは実際に本当ですか?) または他のアドバイスなどについて聞きたいです。ありがとう!