36 votes

MVC3 = >> return EmptyResult() Quand est-ce que c'est une bonne idée de retourner ceci ?

Quand c'est une bonne idée de retourner "EmptyResult()" depuis un contrôleur

38voto

Sergi Papaseit Points 8979

Vous l'utiliserez essentiellement pour signifier que vous ne faites rien avec le résultat d'une action. résultat.

De MSDN :

Représente un résultat qui ne fait rien, comme une méthode d'action de contrôleur qui ne renvoie rien.

J'ai personnellement utilisé sur des actions définies dans un AsyncController Ainsi, si vous avez par exemple une action asynchrone du type :

public void SendMailAsync() { }

Fondamentalement, une action dans un AsnycController vous aurez également besoin d'une action xxxCompleted (par convention).

public virtual ActionResult SendMailCompleted
{
    // do whatever
    return new EmptyResult();
}

Comme il ne s'agit pas d'une action destinée à être appelée par un utilisateur mais par une tâche d'arrière-plan, je ne ferai rien avec le résultat de toute façon.

10voto

dommer Points 11550

Je l'ai utilisé pour créer des services web RESTful. Lors d'une opération POST ou DELETE, par exemple, le code d'état HTTP peut fournir suffisamment d'informations en lui-même.

5voto

Jake Kalstad Points 1379

Lorsque l'ajax effectue une action qui ne nécessite pas de réflexion/confirmation sur l'IU.

4voto

Alex Points 2894

Je suppose que c'est la même chose que de faire return (null) dans l'action. Ça peut être utile parfois. Je l'ai utilisé pour Response.Write à la sortie pendant le débogage, mais n'avait pas besoin que le reste de la vue soit rendu.

Lorsque vous l'utilisez, vous obtenez une page blanche sans rien, à moins que vous ne produisiez quelque chose de votre cru.

3voto

Par exemple : Vous pouvez retourner un résultat vide avec le statut 401.

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X