Я пытаюсь отобразить несколько таблиц, используя Fluent Nhibernate. Мои тесты дают мне следующую ошибку:
NHibernate.Exceptions.GenericADOException: не удалось инициализировать коллекцию: [FluentWeb.Domain.Employees.Orders # 1]
Я пытаюсь сопоставить отношения «один ко многим» между сотрудниками и заказами. Заказы тогда имеют много-много отношений с продуктами (NorthWind). Вот мои сопоставления .. Может кто-нибудь помочь мне. Все работало с HBMs
public class EmployeeMap : ClassMap<Employees>
{
public EmployeeMap()
{
Id(x => x.EmployeeID);
Map(x => x.FirstName);
Map(x => x.LastName);
Map(x => x.City);
Map(x => x.HireDate);
Map(x => x.Title);
HasMany(x => x.Orders)
.AsBag().WithForeignKeyConstraintName("EmployeeID")
.Inverse()
.Cascade.All();
}
}
public class OrdersMap : ClassMap<Orders>
{
public OrdersMap()
{
Id(x => x.OrderID);
Map(x => x.OrderDate);
Map(x => x.RequiredDate);
Map(x => x.ShippedDate);
References(x => x.Employee);
HasManyToMany(x => x.Products)
.Cascade.All()
.WithTableName("Order Details");
}
}
public class ProductsMap : ClassMap<Products>
{
public ProductsMap()
{
Id(x => x.ProductID);
Map(x => x.ProductName);
Map(x => x.UnitPrice);
HasManyToMany(x => x.Orders)
.Cascade.All()
.Inverse()
.WithTableName("Order Details");
}
}
Пожалуйста, дайте мне знать, если вам нужна дополнительная информация. Спасибо за помощь!
-Nick