注文明細(ナビゲーションコレクション)がある場合とない場合がある注文エンティティがあるとします。
注文をクリックすると、注文明細が表示されます。
注文明細がないため、または注文明細がキャッシュにないため(データベースから取得されたことがないため)、注文明細のナビゲーションコレクションが空であるかどうかを知る方法はありますか?
注文明細(ナビゲーションコレクション)がある場合とない場合がある注文エンティティがあるとします。
注文をクリックすると、注文明細が表示されます。
注文明細がないため、または注文明細がキャッシュにないため(データベースから取得されたことがないため)、注文明細のナビゲーションコレクションが空であるかどうかを知る方法はありますか?
Breeze 1.4.16 以降、 EntityAspect.isNavigationPropertyLoadedとEntityAspect.markNavigationPropertyLoaded の 2 つの新しいメソッドが追加されました。 これらは両方とも、そよ風の API ドキュメントに記載されています。あなたが探している特定の方法は、ここに文書化されています:
良い質問ですが、まだ良い答えがありません。特定のエンティティの特定のナビゲーション プロパティが既に読み込まれているかどうかを確認できるように、breeze に何らかのメカニズムを追加することを検討しています。
しかし今のところ、どの navProperties がロードされているかを追跡する entityAspect に独自のプロパティを追加して、これを自分で追跡するのが最善の策です。各クエリの後で promise 解決コールバックの実行中にこのプロパティを更新します。どのプロパティが関与しているかに関するコンテキストは、実行されたばかりのクエリを調べることで判断できます。(クエリはコールバック内で使用できます)。
より良い回答が得られたら、投稿します。