在我们的一个Web应用程序中,我需要使用asp.net mvc路由发送域名(例如:domainname.com)作为参数。所以我创建了一个如下所示的路线定义:
routes.MapRoute(
name: "AccountDetail",
url: "{controller}/{action}/{htip}/{dname}",
defaults: new {
controller = "Account",
action = "Index"
},
);
我也有一个在AccountController中定义的方法,如下所示:
public ActionResult Details(string htip, string dname) { }
根据在控制器中声明的此路由配置和方法,MVC生成类似http://localhost:63740/Account/Details/N/domainname.com
的URL,这是我所期望的。
但是,如果我按照这个URL,IIS的404错误页面欢迎我而不是任何MVC相关页面。因为MVC不会处理网址,因为最终的TLD(.com)。
如何让MVC处理这些网址?