"where"フィルタを常に適用するエンティティフレームワークで関連付けを作成する方法はありますか?フィルタとの関連付けを定義しますか?
ここに例があります: 「ソフト」削除を使用するデータベースがあると仮定すると、すべてのテーブルに「削除済み」列があります。
Address(1:0..n)に関連するCustomerエンティティがある場合、Addressesナビゲーションプロパティを常に削除済みフラグにフィルタリングして、Customer.Addressesコレクションは削除されたアドレス== 0のみを返します。
誰かがこれを行う方法を知っていますか?
解決策かもしれません - 私はもう少し遊ぶ必要があります - 私はEFにとってかなり新しいです。私がT4テンプレートを変更した場合、または私自身のPOCOを生成してEFで使用した場合、必要な方法で協会を働かせる方法があるかどうかは知っていますか(どちらもこれらの機能はまだありません) – JMarsch
覚えておく必要があるのは、ナビゲーションプロパティは「概念上の外部キー」のようなものです。データベース内のFKと同じようにレコードを一意に識別するために使用されます。ナビゲーションプロパティは、データベース内のFKまたはカスタム参照制約にマップする必要があります。しかし、そのカスタム制約でも、関係の両側に1-1のマップが必要です。条件付きにすることはできません。 TPHは非常に簡単です - このブログ/ウォークスルーを読んでくださいhttp://blogs.microsoft.co.il/blogs/gilf/archive/2010/01/24/table-per-hierarchy-inheritance-in-entity -framework.aspx – RPM1984