gpt4 book ai didi

razor - 将 MVC3 应用程序迁移到 MVC4 : Compiler Error Message: CS1513: } expected 的问题

转载 作者:行者123 更新时间:2023-12-03 23:07:04 25 4
gpt4 key购买 nike

这是一个非常奇怪的错误,我认为它可能是一个 Razor 错误。我使用的是 VS 2012、MVC4、Framework 4.5。

按照以下说明操作:http://www.asp.net/whitepapers/mvc4-release-notes#_Toc303253806
我创建了一个新的 MVC4 项目,然后将我的所有代码( Controller 、 View 、 View 模型)从 MVC3 项目复制到它。

一切都运行得很好,直到我测试了一个具有自定义帮助程序的 View 并且其中有一个 foreach , 一 switch , 三 if语句,然后我也在那里调用了其他一些自定义助手。

这两个项目中的代码完全相同,在 MVC3 中它可以工作,但在 MVC4 中它显示以下消息:

Compiler Error Message: CS1513: } expected

所以我尝试添加一个大括号,但它显示了相同的错误,所以我不断添加括号,它不会停止告诉我同样的事情。

我用谷歌搜索了这个问题,但我发现这个问题没有答案:
http://www.1771.in/asp-net-mvc-4-issues-migrating-mvc3-view-in-vs-2012-rc.html

有没有人遇到过这个问题?

最佳答案

MVC4 的 Razor 解析器与 MVC3 不同。
Razor v3 具有高级解析器功能,另一方面与 MVC3 相比具有严格的解析功能。

如果您没有以正确的方式使用 razor 语法,则在将 MVC3 转换为 MVC4 时可能会遇到语法错误。

Razor v2 中不允许的一些常见的 razor 代码错误的解决方案是:

--> 除非有变量声明部分,否则避免在 View 中使用服务器块。

Don’t : @{if(check){body}}
Recommended : @if(check){body}

--> 当您已经在服务器范围内时,请避免使用 @。
Don’t : @if(@variable)
Recommended : @if(variable)

Don't : @{int a = @Model.Property }
Recommended : @{int a = Model.Property }

关于razor - 将 MVC3 应用程序迁移到 MVC4 : Compiler Error Message: CS1513: } expected 的问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12809855/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com