2010-12-16 44 views
55
@{ int i = 4; } 
@foreach (string s in "1,2,3".Split(',')) { 
    @:s is equal to @s 
    @{ i++; } 
} 
@{ int i = 4; } 
@foreach (string s in "1,2,3".Split(',')) { 
    @:s is equal to @s 
    @{ i++; } 
} 

我得到“方法没有重载”写'取0参数“在@ {i ++; }代码行。有什么想法吗?谢谢!剃刀:没有过载的方法'写'需要0个参数

回答

77

试试这个:

@{ int i = 4; } 
@foreach (string s in "1,2,3".Split(',')) { 
    @:s is equal to @s 
    i++ 
} 

@{ int i = 4; } 
@foreach (string s in "1,2,3".Split(',')) { 
    <text>is equal to @s</text> 
    i++; 
} 
+39

我想弄清楚为什么这个工程:一旦你的代码的时候,你不需要@ {}了。您使用“@:”进入Markup,但将其留在行末,以便再次回到代码中。 – 2010-12-17 17:41:27

相关问题