2008-10-23 18 views
12

MVCContrib'den bir denetleyiciye bir parametre olarak bir form ve bunun bir formunu ve bileşenini bağlayan NameValueDeserializer'ı deniyorum, ancak MVC Beta'nun herhangi bir sorunu olup olmadığını merak ediyordum. Bunu yapmanın yolu?Karmaşık model bir listeye bağlanıyor

Çok yazılan bir Nesneyi bağlayabileceğinizi biliyorum, ancak bazı toplu düzenleme durumları için bu Nesnelerin bir Listesini bağlamak istiyorum. Örn.,

örn.

public void Save(IList<Item> items) 
{ 
    foreach (Item i in items) 
    { 
     //Save item 
    } 
} 

MVC Beta'da bu mümkün mü? Önceden teşekkürler.

cevap

17

Evet, ayrıntılı bir blog post about it here yazdım. Basit tipler için gerçekten kolay.

<input type="hidden" name="products.Index" value="0" /> 
<input type="text" name="products[0].Name" value="Beer" /> 
<input type="text" name="products[0].Price" value="7.32" /> 

<input type="hidden" name="products.Index" value="1" /> 
<input type="text" name="products[1].Name" value="Chips" /> 
<input type="text" name="products[1].Price" value="2.23" /> 

<input type="hidden" name="products.Index" value="2" /> 
<input type="text" name="products[2].Name" value="Salsa" /> 
<input type="text" name="products[2].Price" value="1.23" /> 
+3

Not: Karmaşık türleri için böyle bir şey yapmak gerekiyordu "Foo.Index" adlı gizli alan artık ihtiyaç vardır, itibariyle (sanırım) RC1'i. – Troy

+0

Örneğin, örn. Bir "Satıcı"/"Vendor_Id" gezinme özelliği (EF4) .. Herhangi bir ipucu? –