2011-10-19 9 views
1
@for(int i = 0; i < this.Model.PresetReports.Count; i++) { 
     @{ var preset = this.Model.PresetReports.ElementAt(i); } 
     <a href="#" class="@(i == 0 ? "selected" : string.Empty)">@preset.Label</a> 
    } 

「プリセット」は現在のコンテキストには存在しません。 ??ありがとう!剃刀変数が存在しません

答えて

2
@for(int i = 0; i < this.Model.PresetReports.Count; i++) { 
    var preset = this.Model.PresetReports.ElementAt(i); 
    <a href="#" class="@preset.class">@preset.Label</a> 
} 

そうです。

5

このようにしてみてください。

@for(int i = 0; i < this.Model.PresetReports.Count; i++) 
{ 
    var preset = this.Model.PresetReports.ElementAt(i); 
    @<a href="#" class="@preset.class">@preset.Label</a> 
} 

しかし、あなたのシナリオではもう少し理にかなってforeachループ使用することはありませんなぜ私は本当に見ていない:今すぐ

@foreach (var preset in Model.PresetReports) 
{ 
    @<a href="#" class="@preset.class">@preset.Label</a> 
} 

をこれは私がpreset.classについて疑問を持っていると言われています。ビューモデルでclass(小文字のcはC#の予約語です)というプロパティが実際にありますか?

+0

私はそれをより短くするために簡略化しました。私はi == 0かどうかをチェックしていて、hrefに "selected"クラスを追加していました。あなたの答えのオプション1は動作しません、応答thoのおかげで。 ps。なぜ私はforループをしているのか、単純なforeachループではないのか、私の質問を編集しました。 –

関連する問題