2016-05-19 21 views
1

私はこのように、カミソリの例を見てきました:Razorブロックの出力をビューに出力できますか?

@{ 
    if(something == true) 
    { 
     <p>This</p> 
    } 
    else 
    { 
     <p>That</p> 
    } 
} 

私はそのためだった)(@を使用してカミソリのコードブロックがビューに出力何にもなっていないことを考え、そして式が定義されていること。だからこれはどのように可能ですか?

答えて

6

あなたはthis page

声明@()内の式の両方のタイプについての詳細を見つけることができますが、明示的な表現と呼ばれ、リンク上でこのようにそれを説明している:

したいときに、明示的な印象を使用する必要があります他の方法でパーサを混乱させるかもしれない何かを することです。たとえば、 に文字列の途中で変数にアクセスする必要がある場合、または出力に 計算/変更を行いたい場合などです。

ステートメント@{}は、マルチステートメントコードブロックと呼ばれます。リンクの上にこのようにそれを説明します

Aレイザーコードブロックは、@ -characterの組み合わせで始まり、 {-characterで終わる}文字。この中で、あなたは で、現在はC#コードを書いています。

簡単な答えは、複数のステートメントブロックを使用でき、しばしばいくつかのHTMLをレンダリングすることです。また、コンパイラがHTMLとC#のコードを混同している可能性がある場合は、明示的な式(@())を使用する必要があります。

関連する問題