0

是否有可能创建一个始终使用一种方法并且不需要将其放入地址的地图路线?

我的意思是我有一个带有一种方法(索引)的控制器,它显示的项目取决于方法参数。

public ActionResult Index(string TabName)
    {
        var tab = (from t in BlogDB.Tabs
                   where t.TabName == TabName
                   select t).SingleOrDefault();

        ViewData.Model =(Tab)tab;
        return View();
    }

我想要的是我可以在选项卡和 TabName 之间显示没有“/Index/”的地址“www.example.com/Tabs/TabName”的项目。我试过了:

    routes.MapRoute(
        "Tabs1",
        "Tabs/{TabName}",
        new { controller = "Tabs", action = "Index", TabName = UrlParameter.Optional }
    );

但它不起作用。

4

1 回答 1

1

你还有默认路线吗?如果是的话,它是在这个之前定义的吗?

您的问题是 asp.net mvc 正在尝试查找 Tabs 控制器和 Tabname 操作。

将此路由放在默认的 {controller}/{action} 路由之前

于 2010-08-26T14:47:40.410 回答