這是適用於MVC 1 & 2.我不知道是否MVC2會爲了這個美好的一般模型結合的問題,但這裏是我的問題:多個自定義模型粘合劑
我有一個相當複雜的模型:
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
我m沒有模型綁定的專家,但我不認爲這裏有任何需要定製模型綁定器的東西。你如何約束你的名單?這裏有一篇關於默認活頁夾如何處理它們的文章。 http://www.hanselman.com/blog/ASPNETWireFormatForModelBindingToArraysListsCollectionsDictionaries.aspx – Ryan 2010-03-24 15:18:00
@Ryan - 使用自定義模型綁定器進行綁定的主要動機是我使用IEvent接口作爲我的主事件對象。使用默認的模型綁定器,它立即告訴我它不能創建IEvent的實例。那個,我需要根據它是什麼類型的IEvent綁定特定的屬性。我使用默認模型聯編程序和配對值提供程序字典 – Dan 2010-03-24 19:58:02