2013-02-01 1 views
0

그냥 궁금 별도의 라이브러리에서 업데이트를 소비 특정 규칙이 트리거 될 때마다 메시지 알림을 흐리게 표시합니다. WPF 및 MVVM을 사용하여 프론트 엔드 역할을하는 별도의 프로젝트도 있습니다.사람이이 문제에 대한 조언이 있다면

알림이 트리거 될 때마다 분당 서버 클래스 라이브러리에 이벤트가 있습니다. 프런트 엔드에서 알림이 전송 될 때마다 이벤트 처리기가 연결되므로 '보낼'수 있습니다. 프런트 엔드 및 표시 ...하지만 그 같은 것을 처리하는 가장 좋은 방법은 무엇입니까?

답변

1

나는 응용 프로그램의 다른 부분으로 이벤트를 보내야하는 프로젝트에서 다소 비슷한 상황이 발생했습니다. MVVM 패턴을 가능한 한 순수하게 유지하려고하면 MVVM Foundation의 MVVM Messenger/Mediator를 사용하게되었습니다.

중재자 설명 :

http://marlongrech.wordpress.com/2009/04/16/mediator-v2-for-mvvm-wpf-and-silverlight-applications/

MVVM 재단 링크 :

http://mvvmfoundation.codeplex.com/

당신은뿐만 아니라 또 다른 하나의 뷰 모델에서 개체를 보낼 수있는 중재자를 사용할 수 있습니다. 목록 상자 선택이 변경되는 상황에서 사용했습니다. 새로 처리 할 아이템을 다른 뷰 모델로 보내면됩니다.

링크가 포함되어 있으므로 예제가 포함되어 있지 않습니다. 의견을 통해 제가 구현에 대한 예를 보여주기를 원하면 제가 할 수있는 것을 보게 될 것입니다.

+0

아 좋아, 해당 뷰 모델에 알림을 보낼 내 프런트 엔드 응용 프로그램에서 중재자 비슷한을 사용하고, 유일한 문제는 라이브러리에서 알림지고 - 프로젝트 (프론트 엔드) -> 전면 최종 클라이언트 <- 여기에 메시지를 전달하는 방법? -> 프로젝트 (NotificationGenerator) NotificationServer – KingTravisG

+0

NotificationGenerator에서 중재자 알림 (Mediator.NotifyColleagues ...)을 실행합니다. 서버 dll과 프런트 엔드 모두 등록이 작동하도록 Mediator 클래스의 동일한 인스턴스를 참조해야하므로 서버 라이브러리에 배치 할 수 있습니다. 나는 그 부분을 한 번도 해 본 적이 없으므로 약간의 실험이 될 것입니다 ... – Zadam

+0

그래, 나는 Mediator를 별도의 라이브러리로 만들려고 생각했다. NotificationGenerator가 발신자로 등록하여 업데이트를 보내면된다. 모든 것이 잘된다면 해당 ViewModel에 푸시 될 수 있습니다. :) – KingTravisG

관련 문제