如果某个特定请求进入MVC网站,例如status.aspx,我可以动态创建响应,例如“Server1 OK”,而无需创建任何其他控制器来处理此请求。
我们有网络服务器场,当status.aspx请求时,每个网站都应该响应“OK”。
或者我应该创建例如控制器状态,并在status.aspx请求时重定向到该控制器。在这种情况下,问题是当status.aspx请求时我可以如何重定向到状态。
答案 0 :(得分:1)
在ActionResult中,您可以注入响应头。这可以在任何现有的控制器上完成。
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
或者你可以在你的BaseController中设置它(但我不推荐它)
Protected Overrides Function CreateActionInvoker() As System.Web.Mvc.IActionInvoker
Response.StatusCode = CInt(HttpStatusCode.OK)
End Function
答案 1 :(得分:-1)
您应该看一下名为Routing的功能。它允许您将请求URL映射到用于处理响应的控制器。