ias*_*ons 5 asp.net-mvc partial-views
想象一下,我有一个实现名为ISummary的接口的对象列表.此列表中的对象可能具有其他属性,即.
public interface ISummary {
Guid Id {get;set;}
string Title {get;set;}
DateTime Created {get;set;}
}
public class GigSummary: ISummary {
Guid Id {get;set;}
string Title {get;set;}
DateTime Created {get;set;}
string VenueName {get;set}
string Band {get;set;}
}
public class NewsSummary: ISummary {
Guid Id {get;set;}
string Title {get;set;}
DateTime Created {get;set;}
string Author{get;set}
}
Run Code Online (Sandbox Code Playgroud)
我现在将这个Gigs和News Summary对象列表(作为一个ISummary列表)作为模型传递给视图.
我想使用列表中包含的每种类型的不同部分来呈现此列表.
我怎么能这样做ASP.NET MVC?
我能想到的最明显的方法是做一些事情:
foreach(ISummary summ in listOfISummary) {
Html.RenderPartial(String.Fomat("~/Views/Shared/{0}Renderer.ascx", summ.GetType.ToString()), summ, ViewData);%>
}
Run Code Online (Sandbox Code Playgroud)
并使用命名约定创建一个强类型视图,如NewsSummaryRenderer.ascx.
我希望你可以将它移到辅助方法中,但是我会通过扩展方法将其添加到现有的助手之一,而不是像之前建议的那样将它放在后面的代码中.
| 归档时间: |
|
| 查看次数: |
2251 次 |
| 最近记录: |