Odata を介して既に取得したオブジェクトの関係オブジェクトをロードするための最良の方法は何ですか? .expand() メソッドが最初の呼び出しで機能することは理解していますが、最初の呼び出しを行うときのオブジェクトの型はわかりません。これが私のオブジェクト構造の簡略化されたバージョンです
public class BaseClass
{
long id;
}
public class SubClassWithRelationship : BaseClass
{
List<OtherClass> OtherClasses;
}
public class OtherClass : BaseClass
{
string OtherProperty;
}
私の最初のクエリは、取得する派生クラスの型を知りません。それを取得したら、OtherClasses を設定する最良の方法は何ですか? 3つのオプションがあると思います
- オブジェクト全体をリロードし、Expand() メソッドを使用します (同じデータを 2 回ロードする必要があるため、すばらしいとは言えません)。
- リレーションシップ オブジェクトをロードし、それらをオブジェクトに追加するだけです (外部キー リレーションシップに依存したかったので、私のお気に入りではありません)。
- リレーションシップをロードする未知のメソッド。