창의 마스터 섹션에 DataGrid가 포함되어 있습니다. 세부 정보 섹션에는 마스터의 DataGrid에서 현재 선택된 레코드를 편집 할 수있는 양식이 표시됩니다. Grid의 SelectedItem은 마스터 VM에 바인딩됩니다. 속성이 변경되면 마스터 VM이 새 EditViewModel을 만들어 속성을 통해 노출합니다. 뷰의 세부 정보 섹션은이 속성을 DataContext로 사용합니다.두 개의 뷰 모델 간 마스터 - 세부 분할 : 취소 명령 논리를 넣을 위치는 어디입니까?
취소와 같은 명령을 구현할 때 마스터 또는 상세보기 모델에 넣으시겠습니까?
상세보기 모델은 레코드와의 사용자 상호 작용을 담당합니다. 이 책임에는 삭제가 포함된다고 주장 할 수 있습니다. 반면에 마스터 뷰는 컬렉션과의 사용자 상호 작용을 담당하고 삭제는 컬렉션을 수정하므로 삭제 기능을 배치해야한다고 주장 할 수 있습니다. 내가 요청 된 작업을 수행 할 수있는 서비스 계층을 요청 코드를 구현하는 의미 ", 실행 명령"에 의해 - 명확한 설명 :
는벤
편집을 주셔서 감사합니다.
좋은 지적. 이것을 설명하는 나의 실수. 나는 "서비스 계층에서 delete를 호출하는 명령 로직을 배치 할 수있는 가장 좋은 곳은 어디입니까?"와 같은 것을 의미했습니다. –