web-dev-qa-db-ja.com

Razor If / Else条件演算子の構文

あまり運がないので、Razorには次のif/elseステートメントがあります。

<small>
  @if(deletedView){
     @:Deleted
  } 
  else {
     @:Created
  } by
</small> 

私はこのようなことをしようとしています:

<small>
  @(deletedView) ? @:Deleted : @:Created by
</small>

しかし、それは惨めに失敗します。適切な構文は何ですか?

92
B Z

三項式全体を括弧で囲む必要があります。残念ながら、「@:」は使用できませんが、次のようなことができます。

@(deletedView ? "Deleted" : "Created by")

Razorは現在、@()を使用せずにC#式のサブセットをサポートしていますが、残念ながら、三項演算子はそのセットの一部ではありません。

176