我在MVC3中有一个剃刀显示模板用于地址.以下是我用于地址一行的编码示例: @Model.Citytext,/text 当我将逗号直接放在变量名后面时,会产生语法错误.添加 text逗号周围的标记修复了问题,但
@Model.City<text>,</text>
当我将逗号直接放在变量名后面时,会产生语法错误.添加< text>逗号周围的标记修复了问题,但是当大多数剃刀代码如此简洁明了时,它看起来有点乱.
这样做有更整洁,更简洁的方法吗?
编辑:这段代码在if块内.我没有意识到,但事实证明这会影响razar解析东西的方式.
您可以将表达式包装在括号中,以明确告诉解析器它的结束位置:@(Model.City).
或者,您可以使用两个表达式:
@Model.City@('.')
编辑:我误解了你的情况.
在代码块(@ if,@ for,@ {…})中,Razor解析器期待代码,而不是标记(或文本).
如果您放置HTML标记或< text>标记,它会知道你给它标记.
但是,任意文本(例如,,)都假定为C#源.
而不是使用< text>而不是标记告诉解析器你正在给标记,you should use @:
@Model.City@:,