ASP.NET MVC restituisce una visualizzazione vuota


112

Qual è il modo più naturale per restituire un ActionResult vuoto (per l'azione figlio)?

public ActionResult TestAction(bool returnValue)
{
   if (!returnValue)
     return View(EmptyView);

   return View(RealView);
}

Un'opzione che posso vedere è creare una vista vuota e farvi riferimento a EmptyView ... ma potrebbe esserci qualche opzione incorporata?


View () non ha un'opzione per restituire solo testo? In tal caso, invia una stringa vuota.
Andy Hunt

Risposte:


228

restituisce l'istanza della classe EmptyResult

 return new EmptyResult();

1
In un'azione che ritorna EmptyResult, è come fare return null?
Robin Maben

1
@RobinMaben: No, null non restituirà un oggetto dal metodo. EmptyResult invece lo farà.
cederlof

1
Ritornerei nullperché internamente utilizzerà il internal EmptyResult.Instancecui non puoi accedere da solo. Ciò consente di risparmiare istanze ripetute di un oggetto senza stato.
Jorrit Schippers


8

se non vuoi restituire niente puoi fare qualcosa di simile

if (!returnValue)
     return Content("");

   return View(RealView);

16
return new EmptyResult (); è l'approccio preferito
RickAndMSFT
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.