У меня есть элементы Orders, Items и OrderItems с отношением n: n между таблицей Orders и Items. Я использую Fluent Hibernate для сопоставления, в сущности «Заказ» есть свойство «Список», которое имеет «защитный набор». Я столкнулся с проблемой ниже, при вставке.Вставка с использованием NHibernate для отношения n: n
new Order.Items.Add(alreadyexistingitem);
С момента своего уже существующего элемента в таблице ТоварыЗаказа запись должна быть вставлена в таблицу ТоварыЗаказа с новым OrderID и существующий пункт ид. Но только новые данные заказа вставляются в таблицу заказа не в ассоциативную таблицу.
Атрибут «Инверсия» устанавливается для мешка «предметы» в сущности заказов. Итак, мне нужно прикрепить добавленный порядок при добавлении элемента, как показано ниже, но как я могу это сделать, поскольку это объект списка с защитным набором.
Orders.Items.Add(alreadyexistingitem, *order = "neworder"*);
Ниже отображение:
model.Override<Order>(m =>
{
m.HasManyToMany(c => c.Items)
.Table(Constants.TABLE_PREFIX + "OrderItem")
.Inverse()
.Cascade.AllDeleteOrphan();
});
model.Override<Item>(m => m.HasManyToMany(c => c.Orders)
.Table(Constants.TABLE_PREFIX + "OrderItem")
.Cascade.None());
Можете ли вы показать нам сопоставление, которое вы используете в настоящее время? Это, вероятно, пролило бы больше света на основную причину, чем использование сопоставленного объекта. – KeithS
Добавлены сопоставления ... – Sunny