내가 많은 하위 영역 자식이있는 지역 객체를 저장합니다자 NHibernate는/업데이트 이벤트 리스너를 저장합니다 자식 개체에 대해 듣고는
그는 아이들은 단방향이 아닌 반비례 관계로 매핑하는public class Area
{
...
public virtual IList<SubArea> SubAreas { get; set; }
}
:
public class AreaMapping : ClassMap<Area>
{
public AreaMapping()
{
HasMany(x => x. SubAreas).Not.Inverse().Cascade.AllDeleteOrphan();
}
}
영역은 내 기본 루트입니다. 영역 (예 : Session.Save (영역))을 저장하면 영역이 저장되고 하위 하위 영역이 자동으로 계단식으로 연결됩니다.
내 구역 및/또는 하위 영역이 지속될 때마다 저장 또는 업데이트 이벤트 수신기를 추가하여 이벤트를 수신하려고합니다. 예를 들어 5 개의 하위 영역이있는 영역이 있다고합시다. 내가 SaveEventListeners에 훅 경우
Configuration.EventListeners.SaveEventListeners =
new ISaveOrUpdateEventListener[] { mylistener };
을 나는 지역을 저장하는 경우에 myListener는 영역 일단 해고 전용 (SubArea에 무시됩니다). 나는 5 개의 SubAreas가 이벤트 리스너에서도 잡힐 수 있기를 바랍니다. 내가 대신 SaveOrUpdateEventListeners에 훅 경우
Configuration.EventListeners.SaveOrUpdateEventListeners =
new ISaveOrUpdateEventListener[] { mylistener };
을 나는 지역을 저장하는 경우에 myListener는 이 전혀 해고하지 않습니다. 각 SubArea이 두 번 지역을 위해 한 번, 그리고 : 나는 영역을 저장하는 경우에 myListener 해고되어
Configuration.EventListeners.SaveEventListeners =
new ISaveOrUpdateEventListener[] { mylistener };
Configuration.EventListeners.SaveOrUpdateEventListeners =
new ISaveOrUpdateEventListener[] { mylistener };
11 배 : 이상하게도, 나는 SaveEventListeners 및 SaveOrUpdateEventListeners에 훅 경우! (NHIbernate가 SubArea를 INSERT하고 Area Foreign Key로 UPDATING하기 때문에)
내가 뭘 잘못하고 있는지 아는 사람이 있고, 청취자에게 화재가 발생하는 이유는 무엇입니까 각 지역 및 하위 영역에 대해 한 번?
해결 했습니까? 같은 문제가 – andy
나도! 누구든지 해결책을 찾았습니까? – nozzleman