9

在下面的代码中,

如果我使用“@If”语句,我会收到以下编译代码错误,因为“当前上下文中不存在名称 'grid'。

@if (Model.SModel != null)

{

@{ 
    WebGrid grid = new WebGrid(Model.SModel);

 }

 }

 else
 {
}

@grid.GetHtml()

,

但是代码在没有“If”语句的情况下编译。例如

@{ 
    WebGrid grid = new WebGrid(Model.SModel);

}
@grid.GetHtml().

使用 If else 语句的语法错误是什么

4

3 回答 3

13

grid未在您的声明范围之外if声明。

试试这个:

@if (Model.SModel != null) {
    WebGrid(Model.SModel).GetHtml()
}
于 2013-08-05T16:19:08.153 回答
2

我会试试这个:

@if (Model.SModel != null)
{
    WebGrid grid = new WebGrid(Model.SModel);
    grid.GetHtml()
}
else
{
}
于 2013-08-05T16:19:15.010 回答
0

您不需要在@if 中使用@{}。像这样写:

@if (Model.SModel != null)
{
WebGrid grid = new WebGrid(Model.SModel)
}
于 2013-08-05T16:18:05.697 回答