为什么此代码不会删除布局?

时间:2011-05-03 13:44:55

标签: asp.net-mvc-3 razor

我花了一些时间尝试使用:

删除布局(在_ViewStart中定义)
@Layout = ""

@Layout = null

为什么它只能使用块?

@{
  Layout = "";
}

在我看来,两种方式都应该有效。

1 个答案:

答案 0 :(得分:15)

@Layout是一个代码块 它打印Layout属性的值。

Razor解析器在单词Layout后面的空格处停止,因此= null被解析为文字标记。

您想要执行一个语句,而不是打印一个值,因此您需要使用代码 block @{ ... })。

有关详细信息,请参阅my blog post