嗯,这只是令人尴尬.我甚至无法弄清楚ASP.NET MVC3(Razor)中我的一个视图中的简单增量.我已经完成了搜索,看起来Razor的文档很稀疏.这是我曾经尝试过的,并且悲惨地失败了:
@{
var counter = 1;
foreach (var item in Model.Stuff) {
... some code ...
@{counter = counter + 1;}
}
}
Run Code Online (Sandbox Code Playgroud)
我也尝试过@{counter++;}踢,但无济于事=)如果有人能开导我,我会很感激.谢谢!
Gor*_*vic 67
@{
int counter = 1;
foreach (var item in Model.Stuff) {
... some code ...
counter = counter + 1;
}
}
Run Code Online (Sandbox Code Playgroud)
说明:
@{
// csharp code block
// everything in here is code, don't have to use @
int counter = 1;
}
@foreach(var item in collection){
<div> - **EDIT** - html tag is necessary for razor to stop parsing c#
razor automaticaly recognize this as html <br/>
this is rendered for each element in collection <br/>
value of property: @item.Property <br/>
value of counter: @counter++
</div>
}
this is outside foreach
Run Code Online (Sandbox Code Playgroud)
joh*_*ter 20
我没有发现这里的答案在c#中非常有用 - 所以这里有一个工作示例,任何人来到这个页面寻找c#示例:
@{
int counter = 0;
}
@foreach(Object obj in OtherObject)
{
// do stuff
<p>hello world</p>
counter++;
}
Run Code Online (Sandbox Code Playgroud)
简单地说,因为我们已经在@foreach中,所以我们不需要将增量放在任何@ {}值中.
如果你需要做的就是显示编号,一个更清晰的解决方案就是一次性增加和返回:
@{
var counter = 0;
}
<section>
@foreach(var hat in Ring){
<p> Hat no. @(++counter) </p>
}
</section>
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
71701 次 |
| 最近记录: |