2011-09-22 5 views
0

ViewModel 특성 및 모델 엔리치러를 사용하여보다 사용자 정의 가능한 버전을 구현하려고하는데이 this question 및 연결된 blog post과 같은 뷰 모델 목록을 채 웁니다.선택 목록 조회 구현 ViewModel 속성

속성에서 내 선택 목록 인터페이스에 메소드를 지정할 수 있기를 원합니다.

각 Select List 서비스는 선택 목록을 만드는 데 사용하는 IEnumerable을 반환하고 현재 샘플처럼 All 인터페이스를 노출합니다. 모든 인터페이스가 제공하기 때문에 All 메서드를 쉽게 사용할 수 있습니다. 그러나 필자는 종종 select list 클래스의 AllTradingCompanies() AllManafacturingCompanies() 메서드와 같은 다른 메서드를 사용하여 필터링 된 목록을 얻을 수 있기를 바랍니다.

현재 예를 들어 특정 항목에 매핑하기 위해 사용자 지정 속성을 구현해야하는 것처럼 보입니다. [AllCompanyList] 애트리뷰트는 기존 버전이 제공하는 멋진 제네릭 메소드에서 멀어지게 만듭니다. 나는 그것을 보완하기 위해 그것을 사용할 수 있다고 생각하지만, 매력을 잃기 시작합니다. 뷰 모델 논리 당 사용자 지정을 수행 할 수있는 IModelEnrichers도 구현하고 있습니다.

이것을 구현하는 좋은 방법에 대한 의견이 있으십니까?

답변

0

속성 쌍을 사용하여 솔루션을 구현하여 ViewModel의 데이터 요구 사항과 내 도메인의 저장소 또는 서비스 공급자에 대한 요구 사항을 정의했습니다. 내 follow up question이 좋은 생각인지 묻습니다.