基本クラスがあり、派生クラスがあります。基本クラスは、EF4 TPH (Table-per-hierarchy) を使用してテーブルにマップされます。私のアプリケーションでは、ユーザーは多くの派生クラスの 1 つを選択でき、「Discriminator」列に正しく入力して保存する必要があります。
UI では、ユーザーは ID と名前 (基本クラスのプロパティ) のみを入力するため、基本クラス オブジェクトのリストにユーザー エントリを格納しています。ユーザーが実行時にどの派生型を選択したかがわかるため、これを行う方法がわかりません。
これまでのところ、ベース オブジェクトで Convert.ChangeType を使用して派生クラス オブジェクトを取得し、エンティティに Add を実行しようとしました。しかし、「オブジェクトは IConvertible を実装する必要があります」で失敗します。
他に何ができるかわかりません。何か案は?ありがとう。