나는 NHibernate 및 Session과 약간 혼돈 스럽다. 내가 알기로, 나는 "가능한 한 빨리"세션을 사용하기로되어 있는데, 이는 두 개의 서로 다른 상호 작용이 그들 자신의 세션을 얻는다는 것을 의미한다.NHibernate : GUI 변경을 저장하는 가장 좋은 순간
UI 상호 작용의 경우 어떻게해야합니까? DB에 저장하고 싶습니다. 트리보기가 일부 항목을 나열하고 비즈니스 개체의 IsExpanded 속성에 바인딩되는 간단한 예제가 있습니다. (나도 알아, 나쁜 습관,하지만 내 접근은 괜찮습니다) ...
질문은 지금입니다. 언제 변경 사항을 저장합니까? 현재 창을 닫으면 수동으로 플러시됩니다. 제대로 보이지 않습니다. 나는 부동산이 바뀔 때마다 내릴 수 있었지만, 그것은 과잉 살상이었다고 생각합니다.
이런 종류의 문제에 대한 패턴이나 요령이 있습니까? "바로 그 순간에 깔끔한까지 저장 GUI의 정보를 정기적으로"의 종류 ... 여기
더 나은 이해를위한 몇 가지 코드 : 팁private static PjmDbController _d;
private static IList<Topic> _allItems;
private static void TopicStoresChildStatesExpandedOrNot()
{
var w = new Window();
_d = new PjmDbController();
_allItems = _d.GetAllRoots();
w.Content = new PjmTreeView<Topic>() {ItemsSource = _allItems};
w.Show();
w.Closed += new EventHandler(w_Closed);
}
static void w_Closed(object sender, EventArgs e)
{
_d.Session.Flush();
}
감사합니다, 크리스
PS : 정적