Замок ActiveRecord отношения - PullRequest
1 голос
/ 23 декабря 2011

Я пытаюсь сопоставить следующую модель с замком ActiveRecord

  • Контакт (лицо, представленное именем и номером телефона).
  • Группа (представляет группу изконтакты).

Контакт может принадлежать нескольким различным группам, но не обязательно должен быть в группе.

В базе данных это обозначено как:

Контакт

  • Идентификатор
  • Имя
  • Номер телефона

Группа

  • Идентификатор
  • GroupName

Group_Contact - GroupId - ContactId

Контакту не нужно знать, в какие группы он входит (возможно, это требование сопоставления, но не требование бизнеса).

В идеале я хотел бы просто иметь коллекцию контактов в классе группы.

Я пытался отобразить это так в классе группы

[HasAndBelongsToMany(typeof(Contact),
Table = "Group_Contact", ColumnKey = "GroupId", ColumnRef = "ContactId")]
public IEnumerable<Contact> Contacts { get; set; }

Что дает мне следующее исключение: Не удалось угадать тип отношения для свойства Group.Contacts

Любая помощьвысоко ценится.

1 Ответ

1 голос
/ 23 декабря 2011

Вместо IEnumerable<Contact> используйте ICollection<Contact> (для семантики пакета) или ISet<Contact> (для семантики набора) или IList<Contact>

...