У меня есть следующий класс с Словарем:варианты NHibernate MappingByCode Карта Каскад
public class Entity1
{
public Dictionary<Entity2,Entity3> Targets { get; set; }
}
сопоставленного в настоящее время с помощью этого кода:
Map(x => x.Targets,
m => m.Key(k => k.Column("Entity1ID")),
km => km.ManyToMany(mtm => mtm.Column("Entity2ID")),
vm => vm.ManyToMany(mtm => mtm.Column("Entity3ID")));
Я искал способ, чтобы установить другой вариант каскада к KeyMapping, а другой - ValueMapping. Но я могу найти каскад только в главном «Сборнике карт»
Я хочу, чтобы у ключа был Cascade.None - потому что другая часть приложения управляет этим сущностью, а значение имеет Cascade.AllDeleteOrphan.
Как я могу это сделать с помощью MbC?
plus - если я установил каскад «CollectionMapping» - в какой объект он отражает?
Я использую последнюю версию Nhibernate на nuget.
, что не ответил на вопрос о том, как отобразить другой каскад для ключа, плюс я больше озабочен Удалить скадирование ключа/значения в карте (я могу проверить каскадирование по умолчанию, я хочу знать, как его настроить) –
, поскольку каскадирование не влияет на ключ карты, в основном это 'Cascade.None' для ключа. Невозможно установить каскадирование для ключа коллекции – Firo
, который отвечает на него, спасибо :) –