Используя конструктор Microsoft для Entity Framework (v3.5), я создал модель Entity (* .edmx) с созданным классом * .Designer.cs.Я могу без проблем сохранять свои объекты в MS SQL Server, используя модель.
Я новичок в NHibernate и из любопытства Теперь я хотел бы использовать мою модель с Fluent NHibernate и SQLite в качестве базы данных.Я прочитал статью Auto mapping на Fluent NHibernate wiki .Я адаптировал Examples.FirstAutomappedProject
и адаптировал ExampleAutomappingConfiguration
для отображения своих сущностей.(Я использовал только переопределения ShouldMap
и IsId
).Мои сущности довольно просты и не содержат явных ссылок друг на друга в модели.
Теперь, когда я создаю Session Factory, я получаю следующее исключение:
An invalid or incomplete configuration was used while creating a SessionFactory. Check PotentialReasons collection, and InnerException for more detail.
с внутренним исключением с сообщением
An association from the table XXX refers to an unmapped class: System.Data.EntityKey
Нетсвойства моих сущностей имеют тип System.Data.EntityKey
.
[global::System.Data.Objects.DataClasses.EdmEntityTypeAttribute(NamespaceName="MyStorageModel", Name="XXX")]
[global::System.Runtime.Serialization.DataContractAttribute(IsReference=true)]
[global::System.Serializable()]
public partial class XXX: global::System.Data.Objects.DataClasses.EntityObject
{
//...
[global::System.Data.Objects.DataClasses.EdmScalarPropertyAttribute(EntityKeyProperty=true, IsNullable=false)]
[global::System.Runtime.Serialization.DataMemberAttribute()]
public global::System.Guid XXXID
{
//...
}
//...
}
Как вы видите, мои классы сущностей сильно украшены (конечно, использованным дизайнером) с атрибутами, которые, вероятно, относятся к этому типу. Может ли это вызвать эти проблемы?