ASP.NET MVC 2: Ro'yxat‹› identifikator raqamini sinf UI shablonida qanday o'z ichiga oladi?

Tahrirlash: Roʻyxatni oʻz ichiga olgan yagona koʻrinish modeli obʼyektini shaklga bogʻlashga harakat qilaman, shunda post bir xil koʻrinish modeli obyektiga qaytadi.

MVC 2 da buni samarali bajaradigan kod bormi?

EditorFor( m => m, "Students", "Students[n]") // wrong but sorta close
// the third parameter specifies the ID of the html control
// ideally, the "Students[n]" could be a prefix for the inner fields

html chiqishi qaerda bo'ladi:

<input id="Students[0]_Name" type="text" value="" />
<input id="Students[1]_Name" type="text" value="" />
<input id="Students[2]_Name" type="text" value="" />

va id yig'ilishi qisman "sinf" ko'rinishida bo'lishi mumkinmi (UI andozasi)?

...

Endi men bu haqda o'ylab ko'rsam, bu nom bilan barcha maydonlarni prefiks qiladimi, deb o'ylayman:

<% foreach( Student student in Model) { %><%
       EditorFor( m => student, "Student", 
                  "Students[" + Model.IndexOf(student) + "]" ) %><%
   } %>

G'alati... Bu uchinchi parametr qatorini (masalan, "StuffHere") Students va Name orasiga qo'yadi:

id="Students_StuffHere_Name" name="Students.StuffHere.Name"

person Zachary Scott    schedule 21.02.2010    source manba


Javoblar (1)


Savolingizni unchalik tushunmadim, lekin asp.net mvc ning RC2 bilan endi Html.EditorFor(m=>m.Students[i]) kabi kod yozishingiz mumkin bu yerda. Hurmat bilan.

person uvita    schedule 21.02.2010
comment
Siz javobni topdingiz. Ushbu sintaksis bilan to'plamlardan qanday foydalanishga misollarni qayerdan olsam bo'ladi? Men ular massivlardan foydalanishini ko'raman, lekin ular Ro'yxatlardan foydalanishi mumkinmi? O'tish uchun juda oson, lekin men ular joylashtirganda orqaga bog'lashdan ham tashvishlanaman. Hamma narsa bitta ob'ektni Action Method (yoki viewModel ob'ektidagi ob'ektlar to'plami) ga parametr sifatida o'tkazishdir. - person Zachary Scott; 21.02.2010
comment
Siz kabi bir nechta havolalarni ko'rishingiz mumkin. haacked.com/archive/2008/10/23/model-binding-to-a-list.aspx va hanselman.com/blog/ shuningdek, qo'shimcha ma'lumot olish uchun Google-ga kiring, ammo postda modelingizni qayta namlashda hech qanday muammo bo'lmasligi kerak. Hurmat bilan - person uvita; 21.02.2010