コードファーストで列をマップして、選択時に入力されるが、挿入または更新時には使用されないようにする方法はありますか?
[NotMapped]アノテーションを適用すると、プロパティ/列にデータが入力されませんが、このアノテーションを追加しないと、挿入時に列が存在しないというメッセージが表示されます。
私が尋ねる理由は、結合を実行して列の値を返すクエリがあるためですが、挿入時にこの列は必要ありません。
何か案は?
乾杯
編集:
私がしていることをもう少し詳しく説明するための更新です。
以前は、2つのテーブルがありました。
Carer
CarerID
UserID
IsPrimary
User
UserID
しかし、その後、介護者は複数のユーザーに所属できるように要求されたため、以下のようにリンクテーブルを作成する必要がありました。
UserCarer
UserCarerID
UserID
CarerID
IsPrimary
私がやりたくなかったのは、これを一時的に解決した方法です。エンティティ内にメソッドを作成し、別のコンテキストを初期化して値を取得します。
代わりに、データを選択するときに、左結合を実行しIsPrimary
てUserCarerテーブルから値を取得し、Carer.IsPrimary
すなわちselect * from Carer.*, UserCarer.IsPrimary from Carer left join UserCarer on Carer.CarerID = UserCarer.CarerID where UserCarer.UserID = @p0
HTH