2016-03-31 13 views
1

'da arka uçtan ön tarafa kadar liste nasıl geçilir? Son liste için C# backend'imi ön uçlara bağlamak için son saat çalışıyordum. Verileri arka uçtan ön tarafa geçirmenin en iyi yolunu her zaman merak ettim.ASP.NET

Benim senaryoda yalnızca mvc'den basit bir liste çıkışı istiyorum, ancak ön uç ile birlikte listemi nasıl gönderirim? Böylece bir tablodaki tüm verileri çıktı olarak basit bir şekilde yapabilirim:

( Nesne modeli )

archil

tarafından How to pass List from Controller to View in MVC 3. ama korumalı iç ViewResult Görünüm koymak nereye bilemiyorum: Ben çözümü baktım

foreach (var value in customerList) { 
<p>value.Name</p> 
} 

bu bağlantıdaki önerdi

Listemden nasıl çıktı alabilirim? Listede bir kesme noktası koyduğumdan ve içeri adım attığım için içerik içerdiğini biliyorum.

Bu gibi benim kod böyle görünüyor: Ben ViewBag kullanabilirsiniz biliyorum

public List<Customer> customerList = new List<Customer>(); 
    public ActionResult Index() 
    { 

     var client = new CustomerAzureAPIApp(); 
     var response = client.Customer.Get(); 
     var customers = response; 

     foreach (var customer in customers) 
     { 
      customerList.Add(customer); 
     } 

     return View(); 
} 

ama listedeki her öğe için yeni ViewBag oluşturmak istemiyoruz, ben yerine sadece göndereceği tüm liste Baska öneri?

cevap

3

Eh iyi çözüm bilmem ama Sağladığınız bağlantıdaki arşivle önerilen kod hakkında kafanız karışmıyor. o kod satırı otomatik yanıta bir görünüm oluşturur modeli kullanarak bir ViewResult nesnesi oluşturduğundan

Sadece sadece parametre olarak

return View(customerList); 

ile customerList geçebileceği.

Yani ön uç size tablo için böyle bir şey yaptığını bitebileceğini:

<table 
    <tr> 
     <th>ID</th> 
     <th>Name</th> 
    </tr> 
    @foreach (var item in Model) 
    { 
     <tr> 
      <td>@item.Name</td> 
     </tr> 
    } 
</table> 

biz Jilet görüntüleme motoru ile ilgileniyor çünkü satır başında “@” var unutmayın.

0

Eğer bunu bağlanmış olacaktır hangi modeli beyan var, sonra bunun üzerinde yineleme görünümünde:

@model List<Customer> 

@foreach (var value in Model) { 
<p>value.Name</p> 
} 

eylem gelen görüntülemek için geri listenizi geçmesi gerekiyor sceond şey, bu yüzden değiştirmek aşağıdaki:

return View(); 

için:

return View(customerList); 
1

olarak görüntülemeye

return View(*insert list here*); 

ve görünümde daha listeyi döndürerek Modeli kullanabilirsiniz önceden şunları söyledi: Eğer değişken adını kullanmak istiyorsunuz

@model List<*insertTypehere*> 

ve foreachta

görünümünde bir şey dönen ve Viewbag kullanmayan başka yolu Contr içinde var,
Model 

oller.

Viewbag.TheNameYouWish = *insert list* 

ve görünümde şunu kullanabilirsiniz:

@Viewbag.TheNameYouWish 

yani ya

@foreach (var item in Model) 

veya

@foreach (var item in @Viewbag.TheNameYouWish) 

işi yapar.