2015-08-09 5 views
14

Cosa darei alla proprietà asp-for di un helper tag label per visualizzare gli elementi da una raccolta. Il codice sottostante genera un errore di compilazione.MVC 6 Tag Helpers e foreach

@foreach (var item in Model) 
{ 
    <label asp-for="item.BookingCode"></label> 
} 
+1

cos'è l'errore e, nel modello penso che si abbia la raccolta dello stesso articolo e tutti gli articoli conterranno lo stesso nome di attributo per lo stesso valore. – MstfAsan

+0

Sì, hai ragione. In realtà stavo cercando un modo per visualizzare i valori, ma apparentemente MVC6 non ha ancora un tag helper per questo. L'errore è che non c'è "oggetto" in ambito, il che ha senso perché Model.item non esiste. –

+0

@ ConvertToInt32 - in realtà anche se inserisco

risposta

13

Il carattere @ sfugge al codice lambda del modello predefinito. Pertanto è possibile digitare:

@foreach (var item in Model) 
{ 
    <label asp-for="@item.BookingCode"></label> 
} 
+3

In 1.0.0-rc1-update1 il codice sopra riportato stampa semplicemente il testo "BookingCode" anziché il valore effettivo della proprietà BookingCode. Altre soluzioni? – Ross

+1

Poiché questo è per un elemento etichetta, asp-for fa riferimento al nome della proprietà e non al valore di BookingCode. Usa @ item.BookingCode senza elementi per vedere il valore. –

+0

Il tag helper per '