相关疑难解决方法(0)

ASP.NET MVC 3:具体实现的输出特定视图

我有一个基本类型的IEnumerable作为我的模型.

我需要在列表中显示不同的HTML,具体取决于具体类型.

因此,结果列表可能与HTML中的类似:

<ul>
  <li class="points">Points - Item 1 - 10 points <a href="#">Remove</a></li>
  <li class="media">Media - Item 2 - your_uploaded_image.jpg <a href="#">Remove</a></li>
  <li class="content">Content - Item 3 <a href="#">Remove</a></li>
</ul>
Run Code Online (Sandbox Code Playgroud)

我可能会在稍后添加另一种类型,所以下面的解决方案并不是我真正想要的.

@foreach(var item in Model)
{
   if(item is PointImpl)
   {
       var pointItem = item as PointImpl;
       <li class="points">Points - @pointItem.Name - @pointItem.Points points <a href="#">Remove</a></li>
   }
   else if(item is MediaImpl)
   {
       var mediaItem = item as MediaImpl; 
       <li class="media">Media - @mediaItem.Name - @mediaItem.FileName  <a href="#">Remove</a></li>
   }
   /*
       More implementations …
Run Code Online (Sandbox Code Playgroud)

c# razor display-templates asp.net-mvc-3

2
推荐指数
1
解决办法
976
查看次数

标签 统计

asp.net-mvc-3 ×1

c# ×1

display-templates ×1

razor ×1