モデルファーストから始めてデータベースを生成し、エンティティに対して操作を実行できるように、エンティティの部分クラスを作成しました。
コンテキスト内のコードがかなり長くなり、冗長になっているため、次のような呼び出しを行えるようにしたいと考えています。
using (var db = new Context()) {
...
db.MyEntity.ComputeDistance();
...
}
***ADDED***
public void ComputeDistance() {
int distance = 0;
MyEntity curr = this;
while (curr.Parent != null) {
distance++;
curr = curr.parent;
}
this.Distance = distance;
}
私はこれを行うことができますが、リレーショナル プロパティをナビゲートしようとするたびに、遅延読み込みによってそれらの変数が取り込まれていないという問題や、その他のいくつかの種類の例外に遭遇します。DBを関数に渡そうとしましたが、dbを使用せずに関数を使用したい場合があるため、面倒になりました。DB をオプションにしてみましたが、まだ存在しない場合は作成されますが、それでもうまく機能しませんでした。
私はそれを間違ってやっているようで、それを行う方法の良い例は見つかりませんでした.
皆さんはこれらの状況にどのように対処していますか、またはどのように回避していますか?
詳細が必要な場合はお知らせください。ありがとうございます。