Я боролся с этой проблемой NHibernate в течение нескольких часов. Я тщательно исследовал в Интернете, а также документацию NHibernate, и я не могу понять эту проблему. Я относительно новичок в NHibernate, и мне это нравится. В этом случае, однако, это сводит меня с ума.
Я пишу небольшой модуль "Опрос" для веб-сайта. У меня есть несколько классов (Poll, PollVote и PollAnswer). Основной вопрос, опрос, является причиной проблемы. Вот как выглядит класс:
public class Poll
{
public virtual int Id { get; set; }
public virtual Site Site { get; set; }
public virtual string Question { get; set; }
public virtual bool Locked { get; set; }
public virtual bool Enabled { get; set; }
public virtual ICollection<PollAnswer> AnswersSet { get; set; }
public virtual ICollection<PollVote> VotesSet { get; set; }
}
И вот как выглядит отображение:
<?xml version="1.0" encoding="utf-8" ?>
<hibernate-mapping xmlns="urn:nhibernate-mapping-2.2"
assembly="Folke"
namespace="Folke.Code.Domain">
<class name="Poll">
<id name="Id">
<generator class="native"></generator>
</id>
<property name="Site"/>
<property name="Question"/>
<property name="Locked"/>
<property name="Enabled"/>
<set name="AnswersSet" lazy="true">
<key column="PollId"/>
<one-to-many class="PollAnswer"/>
</set>
<set name="VotesSet" lazy="true">
<key column="PollId"/>
<one-to-many class="PollVote"/>
</set>
</class>
</hibernate-mapping>
Это возвращает мне ошибку:
Ссылки на ассоциации не сопоставлены
класс: Folke.Code.Domain.PollAnswer
Описание: необработанное исключение
произошло во время исполнения
текущий веб-запрос. Пожалуйста, просмотрите
трассировка стека для получения дополнительной информации о
ошибка и откуда она возникла
код.
Сведения об исключении:
NHibernate.MappingException:
Ассоциация ссылок не нанесенного на карту класса:
Folke.Code.Domain.PollAnswer
Я действительно хочу понять это и лучше понять внутреннюю работу NHibernate. Я не понимаю, как он не может "видеть" класс PollAnswer.