2011-12-23 3 views
1

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

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

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

В базе данных этого я представлял, как:

Контакты

  • Id
  • Имя
  • PhoneNumber

Группа

  • Id
  • GroupName

Group_Contact - GroupID - ContactId

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

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

Я пытался отображения его, как это в классе Group

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

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

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

ответ

1

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

+0

Спасибо! Это сделал трюк. –