2009-07-20 4 views
0

사람들이 나를 MVVM의 방향으로 가리키고있는 my previous question의 후속 조치입니다.내 ViewModel에 URI 또는 ​​문자열을 포함해야합니까?

저는이 프레임 워크에서 작업이 어디로 가야하는지 정확히 이해하려고합니다. 내보기에는 사용자가 URI를 입력하기위한 텍스트 상자가 들어 있습니다. 이 경우를 URI가 유효한지 확인하고 변환하는 컨버터와 유효성 검사기를 사용하여, 내 뷰 모델에 Uri 객체에

  1. 바인딩 :

    는 지금까지 내가보고, 나는 두 가지 선택이있다. 그러면 ViewModel은 Uri 또는 DependencyProperty.UnsetValue으로 끝납니다. (나는 같은 조합의 변환기/유효성 검사기와 같은 this을 사용하고 있는데,이 좋은 MVVM 관행은 무엇입니까?)

  2. 내 ViewModel에 string에 바인딩하고 ViewModel의 코드에 필요한대로 변환/유효성 검사를 수행하십시오. ViewModel에서 뷰에 URI 문자열이 유효하지 않음을 알리고 적절한 유효성 검사 오류를 표시하는 코드가 무엇인지 확실하지 않습니다.

일반적으로 MVVM 프레임 워크에서 잠재적으로 잘못된 데이터를 처리하는 방법과 위치는 궁금합니다. 이것은 내가 탐색해온 MVVM의 기본 소개에서 다루지 않는 것 같습니다. 이 모든 것을 내 마음 속에서 바로 얻는 데 도움을 주셔서 감사합니다. :)

답변

1

필자의 의견으로는 유효성 확인 프레임 워크를 가지고 사용자로부터 입력을 확인한 다음 유효한 것으로 확인되면 ViewModel의 Uri 속성에 변환기로 바인딩해야합니다.

모두 당신의 검증을 어떻게 설정 하느냐에 달려 있지만, ViewModel에 속성이 설정되기 전에 검증이 이루어져야합니다.

희망 하시겠습니까?

+0

고마워요! "검증 프레임 워크"에 대한 아이디어를 자세히 설명해 주시겠습니까? 지금은 그 유형의 각 필드에 대해 유효성 검사기 + 변환기 클래스를 만드는 것으로 생각하고 있습니다. 사람들이 (MVVM 또는 다른 방식으로) 사용하는보다 공식적인 프레임 워크가 있습니까? – Domenic

+0

입력 요소에 유효성 검사 규칙을 적용 할 수 있습니다. 유효성 검사 프레임 워크에서는 논리 계층을 어떻게 관리하는지 생각합니다. 전에 WPF에 내장 된 기능을 확장하는 오픈 소스 프레임 워크를 사용했습니다 ... 여기 링크가 있습니다. http://www.codeplex.com/wpfvalidation –

+0

** 다른 옵션도 있습니다. 행운을 빕니다 –

관련 문제