2012-06-11 24 views
16

Ben öğelerin bir değişken uzunlukta listesini düzenlemenin bulundu en iyi tavsiye 2008.MVC 4 - Değişken Uzunluklu Ürün Listesini Düzenlemek için Daha Zarif Bir Yol?

http://blog.stevensanderson.com/2008/12/22/editing-a-variable-length-list-of-items-in-aspnet-mvc/

hala bu yaklaşım ASP.Net MVC 4 için en iyisi mi yılında ASP.Net MVC 2 için yazılmıştır, ya standartlaştırılmış ya da daha zarif olan yeni bir çözüm var mı?

+0

Bence insanlar mümkün olduğunca Ajax üzerinden böyle bir şey yapıyorlar. Kod perspektifinden sadece çok daha kolay değil, daha iyi bir kullanıcı deneyimi sunuyor. –

+0

@JonGalloway bir örneğe bağlantı verebilir misiniz? –

+0

Listenin yeniden düzenlenebilir olmasını istemiyorsanız çok da kötü değil. Örneğin knockoutjs kullanarak istemci tarafında tamamen yapabilir ya da her yeni öğe için ajax ile kısmi bir görünüm çekerek yaklaşan bir karmaşaya gidebilirsiniz. –

cevap

7

http://knockoutjs.com/'a bakın, MVVM desenine dayanan bir JavaScript çerçevesidir. Temel olarak dizi modellerini HTML'nize veri ile bağlayabilir ve ardından denetleyicinize JSON dizileri olarak geri gönderebilirsiniz. Büyük bir yan etki, kontrol ünitelerinizin daha fazla ünite testini daha kolay hale getirmesine yardımcı olmasıdır (çünkü kontrol cihazlarınız genellikle JSON'u geri döndürür).

http://channel9.msdn.com/Events/MIX/MIX11/FRM08

de nakavt hakkında harika bir video Temelde bakmak istediğini gözlemlenebilir diziler olduğunu var. http://knockoutjs.com/documentation/observableArrays.html

Ayrıca knockout.js'de 20 dakikalık video tanıtımını izlemenizi şiddetle tavsiye ederim. Eski bir video olmasına rağmen, nasıl çalıştığına dair iyi bir fikir verir, bana çok yardımcı oldu. Ayrıca aynı konsept (MVVM) 'dir angularjs http://angularjs.org/ kullanabilirsiniz http://channel9.msdn.com/Events/MIX/MIX11/FRM08

, bu google tarafından söndürüldü. İkisi arasında en fazla bir fark var (fark ettim ki en azından) açısal olarak daha fazla tembelleşmeye dayanıyor, pek çok açıdan daha fazla güç veriyor.

İki nokta arasında akıtma işleminin daha kolay ve daha kolay olduğunu düşünüyorum ancak AngularJS ile daha fazla seçeneğiniz var.