2010-09-08 4 views
0

Si une requête spécifique arrive sur le site web MVC, par exemple status.aspx, comment je peux créer dynamiquement une réponse par exemple "Server1 OK" sans créer de contrôleurs supplémentaires pour traiter cette requête.Réponse de la page d'état MVC

Nous avons une ferme Web et chacun des sites devrait répondre "OK" lorsque status.aspx est demandé.

Ou je devrais créer par exemple le statut du contrôleur et rediriger vers ce contrôleur si status.aspx demandé. Dans ce cas, la question est de savoir comment je peux rediriger vers Status lorsque status.aspx est demandé.

Répondre

1

Dans votre ActionResult, vous pouvez injecter l'en-tête de réponse. Cela peut être fait sur n'importe quel contrôleur existant.

Imports System.Web.Mvc 
Imports System.Net 

Namespace Controllers 
    Public Class MyFunkyController: Inherits MyApp.Core.Base.BaseController 

     Function Index() As ActionResult 
      Response.StatusCode = CInt(HttpStatusCode.OK) 
      Return View() 
     End Function 

     Function Foo() As ActionResult 
      Response.StatusCode = CInt(HttpStatusCode.OK) 
      Return View() 
     End Function 

     Function Bar() As ActionResult 
      Response.StatusCode = CInt(HttpStatusCode.OK) 
      Return View() 
     End Function 

    End Class 
End Namespace 

Sinon, vous pouvez définir dans votre BaseController (mais je ne le recommanderais pas)

Protected Overrides Function CreateActionInvoker() As System.Web.Mvc.IActionInvoker 
      Response.StatusCode = CInt(HttpStatusCode.OK) 
    End Function 
+0

PS: désolé pour le VB, mais les principes sont les mêmes. Utilisez simplement http://converter.telerik.com pour obtenir la version CSharp. –

+0

Comment puis-je vérifier que la demande de status.aspx vient et demande au contrôleur? – Macaron

+0

Pouvez-vous mieux expliquer le problème que vous rencontrez? Je ne comprends pas parfaitement pourquoi vous devez envoyer le code d'état sur la ligne. –

-1

Vous devriez jeter un oeil à une fonctionnalité appelée routage. Il vous permet de mapper les URL de demande aux contrôleurs destinés à traiter la réponse.

Questions connexes