Вот некоторые объекты:
public class Zone : AbstractGuidKeyedEntity
{
public virtual string Name { get; set; }
public virtual string Description { get; set; }
}
public class ZoneGroup : AbstractGuidKeyedEntity
{
public virtual string Name { get; set; }
public virtual ICollection<Zone> Zones { get; set; }
}
public class Contract: AbstractGuidKeyedEntity
{
public virtual string Name { get; set; }
public virtual ICollection<Zone> Zones { get; set; }
}
Вот правила:
A Zone
может принадлежать ZoneGroup
или Contract
.
A Zone
не может принадлежать как ZoneGroup
, так и Contract
.
Вот что я хочу:
- Одна объединяющая таблица с уникальным идентификатором в зоне.
За что я соглашусь:
- Что-то, что работает.
Как мне легко сопоставить это с Entity Framework 4.1?
Спасибо за ваш ум.
- РЕДАКТИРОВАТЬ -
Вот таблицы, которые я хотел бы.
Zone
--------------------------
| ZoneId | Name |
==========================
| lkj-lakjd | Front |
| asd-jkllk | Rear |
--------------------------
ZoneGroup
--------------------------
| ZoneId | Name |
==========================
| uio-asdfd | Z71 Boat |
--------------------------
Contract
--------------------------
| ZoneId | Name |
==========================
| zxc-qwert | Hugo Taylor|
--------------------------
ZoneGroupContractZone
--------------------------------------
| ZoneId | ZonableId | Type |
======================================
| lkj-lakjd | uio-asdfd | ZoneGroup |
| asd-jkllk | zxc-qwert | Contract |
--------------------------------------