Domanda

    

Questa domanda ha già una risposta qui:

         

Non avendo molta fortuna, ho la seguente if / else in Razor che funziona perfettamente

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

sto cercando di fare qualcosa di simile:

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

Ma che fallisce miseramente. Qual è la sintassi corretta?

È stato utile?

Soluzione

Hai bisogno di mettere l'intera espressione ternaria tra parentesi. Purtroppo questo significa che non è possibile utilizzare "@", ma si potrebbe fare qualcosa di simile:

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

Razor attualmente supporta un sottoinsieme di C # senza usare espressioni @ () e, purtroppo, gli operatori ternari non fanno parte di quella serie.

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top