2011-03-14 78 views
0

目前即时得到一个404错误形式 MYDOMAIN /产品的MapPageRoute为MYDOMAIN /产品MYDOMAIN /产品/产品

的任何产品页面,我想这些映射到MYDOMAIN/showproduct.aspx?页面名=产品

是它像 routes.MapPageRoute( “产品”,
“{} Prodname是”,
“〜/ showproduct.aspx”
); 不知道这是否会工作,但不确定查询字符串

回答

2

您想映射的URL看起来更像是一个经典的ASP.NET URL,然后是一个MVC URL。在MVC中,您不链接到物理文件,而是链接到控制器类中的操作方法。

在MVC它应该看起来更像是:MYDOMAIN /产品/显示/产品名称

的默认URL路径应该处理上面的URL结构:

  routes.MapRoute(
      "Default", // Route name 
      "{controller}/{action}/{id}", // URL with parameters 
      new { controller = "Home", action = "Index", id = UrlParameter.Optional } // Parameter defaults 
     ); 

编辑:

如果你有以另一种方式尝试这样做:

routes.MapRoute(
    "Page", 
    "{name}.aspx", 
    new { controller = "Page", action = "Index", id = "" } 
);