Nhibernate не удалось создать экземпляр прокси-сервера
Я пытаюсь сопоставить класс ApplicationRequest с классом запроса. Один запрос может иметь несколько ApplicationRequests, но один ApplicationRequest принадлежит только одному запросу. Ниже приведены мои классы и соответствующие xml-сопоставления.
class Request { public virtual string Id { get; set; } public virtual string FirstName { get; set; } public virtual string LastName { get; set; } public virtual string JobTitle { get; set; } public virtual IList<ApplicationRequest> Requests { get; set; } } class ApplicationRequest { public virtual int Id { get; set; } public virtual string RequestId { get; set; } public virtual int AppId { get; set; } public virtual string AppComment { get; set; } public virtual Request Request { get; set; } }
<?xml version="1.0" encoding="utf-8" ?> <hibernate-mapping xmlns="urn:nhibernate-mapping-2.2" assembly="nHibernateExample" namespace="nHibernateExample"> <class name="Request" table="Requests"> <id name="Id" column="ID" generator="assigned" /> <property name="FirstName" /> <property name="LastName" /> <property name="JobTitle" /> <bag name="Requests" lazy="true"> <key column="RequestID" foreign-key="ID" /> <one-to-many class="ApplicationRequest" /> </bag> </class> </hibernate-mapping> <?xml version="1.0" encoding="utf-8" ?> <hibernate-mapping xmlns="urn:nhibernate-mapping-2.2" assembly="nHibernateExample" namespace="nHibernateExample"> <class name="ApplicationRequest" table="ApplicationRequests"> <id name="Id" column="ID" generator="native" /> <property name="RequestId" column="RequestID" /> <property name="AppId" column="AppID" /> <property name="AppComment" /> <many-to-one name="Request" class="Request"> <column name="RequestID" not-null="false" index="ID" /> </many-to-one> </class> </hibernate-mapping>
Я могу получить запросы и связанные с ними запросы приложений следующим образом:
Request request = session.Get<Request>("R00877");Ошибка возникает, когда я пытаюсь получить ApplicationRequests с этим:
List<ApplicationRequest> requests = session.Query<ApplicationRequest>().Where(x => x.RequestId == "R00877").ToList();Внутреннее исключение-это
{"Access is denied: 'nHibernateExample.Request'.":""}а послание такое
Creating a proxy instance failed
Любая помощь в этом отношении будет оценена по достоинству.
Что я уже пробовал:
Я пытался изменить отображение "многие-к-одному", но эта ошибка всегда возникает.