我有一个现有的 razor 1 / mvc 3 视图,有一些嵌套的if- 非常简单,但是在升级到 razor 2 / mvc 4 后,它在运行时抱怨并编译(BuildViews)关于} expected. 它曾经工作得很好。
- 我检查了所有元素是否格式正确/已关闭
- 我检查了所有
{/}是否平衡 - 这不是文件结尾问题
有什么问题?
我有一个现有的 razor 1 / mvc 3 视图,有一些嵌套的if- 非常简单,但是在升级到 razor 2 / mvc 4 后,它在运行时抱怨并编译(BuildViews)关于} expected. 它曾经工作得很好。
{/}是否平衡 - 这不是文件结尾问题有什么问题?
在 razor 2 / mvc 4 升级中修复了许多遗留的 razor 奇怪问题;一个有趣的问题是,在 razor 1 中,以下内容是合法的(在代码区域中):
string foo = @Some.Complex.Expression;
注意@有多余的和不正确的,但是剃须刀1没有抱怨。但是,razor 2 比较挑剔,比较糊涂,} expected报错。此行应替换为:
string foo = Some.Complex.Expression;
这有点微妙,因为发生的错误与大括号(/ )无关,并且可能与报告的行相距几行。{}