Asp.net mvc 3 将请求传输到MVC控制器或视图
我有一个http处理程序,它可以接收我的自定义扩展名.page的所有请求。这适用于老式asp.net,我只需做一个服务器。传输到所选的aspx文件。 然而,我想把它转移到MVC,而不是重新路由到控制器或视图。不管我喜欢哪个控制器 在此问题上的任何帮助都将不胜感激Asp.net mvc 3 将请求传输到MVC控制器或视图,asp.net-mvc-3,asp.net-mvc-routing,Asp.net Mvc 3,Asp.net Mvc Routing,我有一个http处理程序,它可以接收我的自定义扩展名.page的所有请求。这适用于老式asp.net,我只需做一个服务器。传输到所选的aspx文件。 然而,我想把它转移到MVC,而不是重新路由到控制器或视图。不管我喜欢哪个控制器 在此问题上的任何帮助都将不胜感激 谢谢 我会在RouteTable.Routes忽略的路由中添加一个新条目: routes.Ignore("{*allcustomextension}", new {
谢谢 我会在
RouteTable.Routes
忽略的路由中添加一个新条目:
routes.Ignore("{*allcustomextension}",
new {
allcustomextension = @".*\.ext(/.*)?"
});
这将允许将处理程序
作为物理资源调用
要从处理程序上下文重定向到视图
,请使用:
System.Web.Mvc.UrlHelper.Action("ViewName", "ControllerName");
首先,您应该只重定向到一个控制器,该控制器将选择要渲染的视图,但认为您不需要该自定义处理程序。尝试类似的方法(您应该以某种方式更改它以匹配您拥有的url格式) 如果这不起作用,并且您确实希望从处理程序重定向,请将来自Xander的忽略路由与
Response.Redirect(System.Web.Mvc.UrlHelper.Action("ActionName", "ControllerName"));
Afaik,Server.Transfer仅适用于asp.net classic,因此您唯一的选择是重定向 但是我如何从我的手持设备重定向/转移到我的控制器或视图?
Response.Redirect(System.Web.Mvc.UrlHelper.Action("ActionName", "ControllerName"));