2010-11-11 42 views
1

我希望/怀疑这很容易,所以我会在这里问一下,如果是这样的话,我会让自己变傻。设置foreach中的var值 - Razor查看引擎

我在我看来有一个foreach循环,介意你这是一个剃刀视图。我不知道如果ASP.NET视图引擎做相同的...但它可能。我想在每个循环中翻转一个布尔,但它看不到让我。视图引擎窒息死亡。为什么?我该如何解决它?我做了一个for循环,现在我做了mod 2,但我真的需要明白这一点。

这是我的尝试:

@{ 
    var IsOdd = false; 
} 
@foreach(var foo in bar) 
{ 
    @{ IsOdd = !IsOdd; } 
    <div class="@(IsOdd ? "odd" : "even")">@foo</div> 
} 

回答

6

试试这个:(为我工作与MVC 3 RC)

@{ 
    var IsOdd = false; 
} 
@foreach(var foo in bar) 
{ 
    IsOdd = !IsOdd; 
    <div class="@(IsOdd ? "odd" : "even")">@foo</div> 
} 

+1

嗯,我几乎试过了,但转念一想,没有,这永远不会工作。奇怪这个新的剃刀是。 – CrazyDart 2010-11-11 21:45:43

+0

我觉得我看的越多越有意义。 – CrazyDart 2010-11-11 21:46:55

+0

似乎是一个试验和错误很多。有趣的是,SO语法突出显示器确实惹怒了Razor语法。 – Larsenal 2010-11-11 21:48:17