我有这段代码给了我错误: “编译器错误消息:CS1525:无效的表达式术语'}'”
错误表示第69行的结束括号:
Line 67: @ibItem.ToString()
Line 68: @ibCount++
Line 69: }
Line 70: </div>
Line 71: <!-- Carousel nav -->
代码:
@{int ibCount = 0;}
@foreach (var ibItem in Model.imagePath)
{
@ibItem.ToString()
@ibCount++
}
有人可以帮助我解决问题吗? 谢谢!
答案 0 :(得分:2)
我想你想要将ibItem打印到视图并增加ibCount。在这种情况下,@ symbol不是必需的,因为你进入foreach循环并且你没有写任何标记,所以razor认为他仍然在一个&#34;代码&#34;声明,所以@是多余的。当然,既然现在ibCount是代码,你需要在行尾添加分号。
@{int ibCount = 0;}
@foreach (var ibItem in Model.imagePath)
{
ibCount++;
@ibItem.ToString()
}
如果您想要编写计数,我建议执行以下操作(用括号括起值)
@{int ibCount = 0;}
@foreach (var ibItem in Model.imagePath)
{
@ibItem.ToString()
@(ibCount++)
}
一个很好的参考如下:
http://haacked.com/archive/2011/01/06/razor-syntax-quick-reference.aspx/
答案 1 :(得分:1)
你错过了分号。它指向结束括号,因为该字符无效,它必须是表达式的另一个组件或表达式的结尾。
~$ telnet 192.168.10.39 587
Trying 192.168.10.39...
Connected to 192.168.10.39.
Escape character is '^]'.
220 domainchanged.com ESMTP Postfix (Ubuntu)
ehlo domainchanged.com
250-domainchanged.com
250-PIPELINING
250-SIZE 10240000
250-VRFY
250-ETRN
250-STARTTLS
250-AUTH PLAIN LOGIN
250-ENHANCEDSTATUSCODES
250-8BITMIME
250 DSN