web-dev-qa-db-ja.com

MVC RazorビューでのIfステートメントの使用

次のコードでは、

"@If"ステートメントを使用すると、次のコンパイルコードエラーが発生します。

@if (Model.SModel != null)

{

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

 }

 }

 else
 {
}

@grid.GetHtml()

しかし、コードは "If"ステートメントなしでコンパイルされます。たとえば、

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

}
@grid.GetHtml().

If elseステートメントを使用する際の構文エラーは何ですか

9
user2630764

gridは、ifステートメントの範囲外で宣言されていません。

代わりにこれを試してください:

@if (Model.SModel != null) {
    WebGrid(Model.SModel).GetHtml()
}
13
hunter

私はこれを試します:

@if (Model.SModel != null)
{
    WebGrid grid = new WebGrid(Model.SModel);
    grid.GetHtml()
}
else
{
}
2
Brian Maupin

@if内で@ {}を使用する必要はありません。このように書きます:

@if (Model.SModel != null)
{
WebGrid grid = new WebGrid(Model.SModel)
}
0
Andriy Gubal