0
私はこのような既存のDBスキーマを持っています(変更できません)。両方のテーブルの主キーですエンティティフレームワークでのマッピング
ID CourseID CourseName
--------------------------
1 100023 Course1
2 100022 Course2
3 100024 Course3
4 100023 Course1
ID
:
ID Name CourseID
------------------------
1 Name1 100023
2 Name2 100023
3 Name3 100024
4 Name4 NULL
Course
がテーブル:私はEFマッピングに
Student
テーブルを行う必要があります。 CourseID
は関係の列です。
データベース(SQL Server)にも明示的な関係はありません。
マッピングを行うために必要なキーとしてCourseID
を指定してEFでマッピングしようとすると、キープロパティとして定義されていないことを示すエラーがスローされます。ヌル可能フィールドなので、Keyプロパティとして追加することはできません。
このマッピングを行う方法はありますか?
あなたはEFコアでそれを行うことができるかもしれないように見える:https://data.uservoice.com/forums/72025-entity-framework-feature-suggestions/suggestions/1050579-unique-constraint-ie -candidate-key-support –
@Steveこの関係は直感的ではないようです。多対多関係のように、2つのテーブルしかありません。 –
あなたのマッピングでできるようにそれはいないようですが、あなたはあなたのリポジトリ/データアクセスロジック内でそれを行うためのプライベートメソッドとしてそれを設定することができます。 – krillgar