我有一個問題,我不知道如何解釋,但我會嘗試。 我跟着這個:http://www.deliveron.com/blog/post/SEO-Friendly-Routes-with-ASPnet-MVC.aspx 而且我能夠實現他們所描述的。 但是,如果我有一個頁面,我想從其他控制器調用操作,它不起作用。 它不會以這種方式顯示鏈接:URL中的「this-is-my-link」。MVC3鏈接SEO - 如何打電話從一個控制器到其他控制器
我不知道我做錯了什麼?
在Global.asax中public static void RegisterRoutes(RouteCollection routes)
{
routes.IgnoreRoute("{resource}.axd/{*pathInfo}");
routes.MapRoute(
"Default", // Route name
"{controller}/{action}/{id}", // URL with parameters
new { controller = "Home", action = "Index", id = UrlParameter.Optional } // Parameter defaults
);
routes.MapRoute(
"Default2",
"{controller}/{action}/{id}/{pageTitle}",
new
{
controller = "Home",
action = "Index",
id = UrlParameter.Optional,
pageTitle = UrlParameter.Optional
}
);
}
查看/幫助/
@Html.ActionLink(FaqStrings.ContactUs, "ContactUs", "Home", new { id = 1, pageTitle = "link text".ToSeoUrl() })
它說,它無法解析聯繫我們。它不是來自HomeController的動作,而是看到了HelpController的動作。
在HomeController的
[AllowAnonymous]
public ActionResult ContactUs()
{
var model = new ViewModelContactUs
{
Resultmessage = string.Empty,
Youremail = string.Empty,
Yourmessage = string.Empty,
Yourname = string.Empty
};
return View(model);
}
[AllowAnonymous]
[HttpPost]
public ActionResult ContactUs(ViewModelContactUs model)
{
Log.DebugFormat("HomeController-ContactUs()");
........
var model2 = new ViewModelContactUs
{
......
};
ModelState.Clear();
return View(model2);
}
我不瞭解你的問題。哪些代碼不會產生期望的結果? – user1477388
我添加了代碼。我希望它更清楚。 –