Я попытался создать EF-модель (VS2010, .NET4) с 3 таблицами, каждая таблица с PK называется Sync_ID.
TABLE_HEAD: (Sync_ID (PK), GRID_ID int, SERIALNUMBER int, YEARint)
TABLE_POINT: (Sync_ID (PK), GRID_ID int, SERIALNUMBER int, YEAR int, POINT_NUMBER int)
TABLE_PLANT: (Sync_ID (PK), GRID_ID int, SERIALNUMBER int, YEAR int, POINT_NUMBER int, PLANT_NUMBER int)
Ассоциации: TABLE_HEAD "1 ко многим" TABLE_POINT "1 ко многим" TABLE_PLANT
Как видите, GRID_ID, SERIALNUMBER, ГОД TABLE_HEAD должны быть сопоставленыGRID_ID, SERIALNUMBER, YEAR из TABLE_POINT
И GRID_ID, SERIALNUMBER, YEAR из TABLE_POINT должны быть сопоставлены с GRID_ID, SERIALNUMBER, YEAR, POINT_NUMBER
Моим первым подходом было использование YID GRID для группы GRID_как PK, но это было бы нарушением Условия.
Таким образом, единственный способ - использовать Sync_ID в качестве PK.Но как можно сопоставить другое поле, как описано выше?Могу ли я только сопоставить PK_Columns?
Надеюсь, у вас есть идеи, чтобы помочь мне.Другие подходы тоже приветствуются.С наилучшими пожеланиями!