2010-01-14 63 views
0

Im新的asp.net mvc,只是現在就學習基礎知識。asp.net mvc - 頁面上的多個數據綁定組件

我想知道具有多個數據綁定項目的頁面如何與mvc視圖一起工作。

例如說有一個頁面列出來自「NewsArticles」表的一堆「新聞文章」。 並且在頁面的旁邊有另一個列表,其中包含例如「CaseStudies」的列表。

那麼如何在mvc中實現?

回答

1

你會創建自己的視圖模型類:

public MyPageViewModel 
{ 
    public IEnumerable<NewsArticles> Articles{get;set;} 
    public IEnumerable<CaseStudies> CaseStudies{get;set;} 
} 

返回它在你的行動模式:

public ActionResult MyPage() 
{ 
    var model = new MyPageViewModel(); 
    model.Articles = ArticleManager.GetArticles(); 
    model.CaseStudies = CaseStudyManager.GetCaseStudies(); 
    return View(model); 
} 

然後你可以使用ViewPage<MyPageViewModel>類型的強類型的視圖,像這樣輸出它們:

<ul> 
<% foreach(NewsArticle article in Model.Articles){%> 
<li><%=article.Title%></li> 
<%}%> 
</ul> 

<ul> 
<% foreach(CaseStudy caseStudy in Model.CaseStudies){%> 
<li><%=caseStudy.Title%></li> 
<%}%> 
</ul> 
0

一個選項是指定ViewData在行動方法:

ViewData["NewsArticles"] = GetNewsAticles(); 
ViewData["CaseStudies"] = GetCaseStudies();