4

Web ページを使い始めたばかりで、コード ブロックが機能しない理由がよくわかりません。WebGrid を条件付きで表示する必要があります。私が始める前に、私はこれを持っています:

<div>
@grid.GetHtml()
</div>

次に、if ステートメントを挿入してみます。

<div>
  @if (condition) { grid.GetHtml(); }
</div>

これにより、グリッド html が表示されなくなります。実際、if ステートメントがなくても、コード ブロックだけを使用しても、html は得られません。

<div>
  @{ grid.GetHtml(); }
</div>

残念ながら、私は WebMatrix を実行しているのでデバッグできませんが、コード ブロックを使用するたびにステートメントが実行されないようです。

4

1 に答える 1

3

1行のステートメントでは、コードブロックに入れる代わりに、@記号を使用する必要があります。それでもコードブロックに入れると(必要な場合があります)、呼び出すだけではグリッドが表示されません。grid.GetHtml();これが@記号が使用される理由であり、値を書き出すことを意味しますが、 HTMLコードで記述している場合にのみ、これを使用する必要があります。コードブロックを使用する場合は、次のように、この値を書き出す必要があることをサーバーに通知する必要があります。

@{
this.Write(grid.GetHtml());
}
于 2013-02-12T09:44:16.633 に答える