2

ASP.NET MVC では、以下のコードでモデル フィールドを displayText にバインドしようとしていました。

<%    if (Model.WillAttend == true)
           Html.DisplayTextFor(x => x.Name);   %>

しかし、私が試したとき:

<%    if (Model.WillAttend == true)     %>  
         <% = Html.DisplayTextFor(x => x.Name)     %>

それは機能しています、なぜですか?どちらも同じコードのように見えますが、以下の唯一の違いは、各行がサーバー側のタグで区切られていることです。

4

1 に答える 1

2

違いは=、開始タグの後の記号にあります<%。これにより、値が出力に書き込まれます。最初の例は、単に値を宣言するだけで、それに対して何もしていません。

ASPX ビュー エンジン タグの構文の詳細については、このブログ エントリを参照してください。

これは、Razor 構文を使用すると大幅に簡略化されます。コードブロック内の行の前に @ を付けるだけで、 output に書き込むことができます。ただし、ASPX ビュー エンジンに同様の機能があるかどうかはわかりません。

于 2013-07-05T07:49:15.600 に答える