我正在网站上工作,我想创建一些SEO友好的网址。 到目前为止,我已成功完成以下任务:
wwww.mywebsite.com/laptops/brand
wwww.mywebsite.com/laptops/brand/model。
这一切都是通过在RouteConfig中添加必要的路线来实现的。
现在我面临一个已发布的,我正在寻求帮助。 如果您导航到wwww.mywebsite.com/laptops/brand/model然后提交我的搜索表单以进行其他搜索,则网址结构将如下所示:
wwww.mywebsite.com/laptops/brand/model?Brand=NewSelectedBrand?Model=NewSelectedModel ...
我应该怎么做才能让新搜索的网址结构遵循相同的模式 - > mywebsite.com/laptops/NewSelelectedBrand/NewSelectedModel?
根据要求: 这是形式:
@using (Html.BeginForm("Laptops", "Search", FormMethod.Get, new { @class = "", id = "searchForm" }))
{
@Html.HiddenFor(x => x.SelectedBrand)
@Html.HiddenFor(x => x.SelectedModel)
}
在我的路线配置中,我按此顺序排列如下:
routes.MapRoute(
"LaptopListings-BrandModel",
"search/laptop-listings/{SelectedBrand}/{SelectedModel}",
new
{
controller = "Search",
action = "LaptopListings",
SelectedBrand = UrlParameter.Optional,
SelectedModel = UrlParameter.Optional
});
routes.MapRoute(
"LaptopListings-Brand",
"search/laptop-listings/{SelectedBrand}",
new
{
controller = "Search",
action = "LaptopListings",
SelectedBrand = UrlParameter.Optional
});
routes.MapRoute(
"LaptopListings",
"search/laptop-listings",
new
{
controller = "Search",
action = "LaptopListings"
});