2013-07-16 9 views
5

Hallo alle mir jemand helfen kann ... Im sehr neu in C# und mvcwie eine Liste, Sammlung oder IEnumerable in Aussicht zu handhaben

Die Modell ist:

public class CatagoryModel { 
    public int Id { get; set; } 
    public string CName { get; set; } 
} 

Der -Controller ist:

public ActionResult catagory() { 
     var c = new CatagoryModel(); 
     var URL=""; 

     HttpWebRequest req = WebRequest.Create(URL) 
        as HttpWebRequest; 
     string result = null; 
     using (HttpWebResponse resp = req.GetResponse() 
             as HttpWebResponse) 
     { 
      StreamReader reader = 
       new StreamReader(resp.GetResponseStream()); 
      result = reader.ReadToEnd(); 
     } 


     var categories = JsonConvert.DeserializeObject<List<CatagoryModel>>(result); 

     return View(categories); 
     } 

Die Ansicht wie diese

@model MvcApplication1.Models.CatagoryModel 
<ul> 
@foreach(var k in Model){ 
    <li>@k.Id</li> 
    <li>@k.CName</li> 

} 

Und ich weiß nicht, was falsch gelaufen ist ...
Es zeigt einen Fehler während der Ansicht Rendering ..

+0

Ich würde auch empfehlen, [ein Ansichtsmodell spezifisch für die Ansicht erstellen, die Ihrer Ansicht nach die Bedürfnisse kapselt und ist erweiterbar] (http : //msdn.microsoft.com/en-us/vs2010trainingcourse_aspnetmvc3fundamentals_topic7.aspx). –

Antwort

5

Nun, wenn Ihr Modell Enumerable ist, ist es aus Ihrer Sicht muss aufzählbar sein!

@model IEnumerable<MvcApplication1.Models.CatagoryModel> 
0

Ihr Modell ist eine Liste von CategoryModel, kein einziges CategoryModel:

@model IEnumerable<MvcApplication1.Models.CatagoryModel> 
Verwandte Themen