2017-08-14 49 views

回答

0

你可以簡單的有兩個局部變量上您的視圖將排名和以前的分數存儲在列表中。每當PreviousScore和當前得分值不同時,您可以將您的等級計數器增加1.

我假定您的視圖是強類型的,並從其操作中收到得分列表。

請檢查下面的代碼。 「

@{ 
    int rank = 0, previousScore=0; 
} 
    @foreach(var item in Model.OrderByDescending(a=>a.score)) { 
     if(item.score !=previousScore) { 
     rank += 1; 
     } 
     previousScore = item.score; 

    <span> @rank) @item.name , @item.score </span> 
    <br />  
} 
-2

當返回查看返回你的學生班級的名單,如果他們有得分ATTR邏輯將是剃刀語法

@(Yourlist) = (Yourlist).OrderBy(i => i.score); 

<ul> 
@{foreach (var i in Yourlist) 

<li>@(i.name + " " + i.score )</li> 

} 
</ul> 

希望幫助

+1

***」如果兩個或兩個以上的學生得分相同,他們得到相同的位置「*** – ediblecode

+0

爲什麼不呢?他們有相同的分數 他沒有說任何關於那個 ,他們很好地在列表中彼此在一起:/:/ –

相關問題