이 MVC2이 더 나은 것 만약 내가 궁금하네요 MVC 1 & 2를 적용 일반 모델 바인딩 질문이지만, 여기 내 질문 :여러 사용자 정의 모델 바인더
public interface IEvent
public int Id
public string Title
public List<EventContact> Contacts
public List<EventDatesLocations> DatesLocations
public class EventDatesLocations
public int Id
public DateTime StartDate
public DateTime EndDate
public List<EventLocation> Locations
내가 모든 IEvent 바인딩을 기본적으로 수행 내 IEvent 클래스에 대한 사용자 정의 모델 바인더를 가지고 :
나는 매우 복잡한 모델을 가지고있다. Contacts
목록 바인딩을위한 기본 모델 바인더를 호출합니다. 이는 잘 작동합니다.
DatesLocations
물건을 바인딩 할 준비가되었지만 제대로하고 있는지 확인하고 싶습니다.
전체적으로 필자는 모델 바인딩에 대한 모든 세부 사항을 이해하고 있는지 잘 모르겠습니다. IEvent
안에 여러 모델의 바인더를 가지고있는 것이 더 좋을까요 아니면 하나의 IEvent
모델 바인더를 가지고 있겠습니까 (지금하고 있습니다). 필요한 바인더의 기본 바인더를 호출합니다.
전문가는 어떻게합니까? : P
어떤 유형에 따라 다른 특성을 확인 후를 구현하는 객체로 작업 할 수없고 ... 인터페이스가 구현해야하는 계약이 정의 할 수 있습니다 기억 모델 바인딩에는 전문가가 없습니다.하지만 여기에는 사용자 정의 모델 바인더가 필요한 항목이 없다고 생각합니다. 어떻게 당신을 당신의 목록에 묶고 있습니까? 다음은 기본 바인더가 어떻게 처리하는지에 대한 기사입니다. http://www.hanselman.com/blog/ASPNETWireFormatForModelBindingToArraysListsCollectionsDictionaries.aspx – Ryan
@Ryan - 사용자 정의 모델 바인더를 사용하여 바인딩하는 주된 동기는 필자가 메인 이벤트 객체로 IEvent 인터페이스를 사용한다는 사실이었습니다. 기본 모델 바인더를 사용하여 즉시 IEvent의 인스턴스를 만들 수 없다고 말했습니다. 그것과 나는 그것이 어떤 종류의 IEvent인지에 기초하여 특정 속성을 바인딩 할 필요가있다. 쌍을 이루는 valueprovider 사전과 함께 기본 모델 바인더를 사용합니다. – Dan