【发布时间】:2015-03-31 14:05:36
【问题描述】:
我正在开发 CMS,需要进行动态路由。我尝试了很多东西,但我决定使用下面的路由。
[Route("{leftPath:values(announcements|duyurular)}/{announceUrl?}")]
public ActionResult Announcements(string leftPath, string announceUrl)
{
ViewBag.Url = announceUrl;
return View();
}
问题:
[Route("{leftPath:values(announcements|duyurular)}/{announceUrl?}")]
粗体部分是动态的。例如,如果我只使用英语作为用户界面语言,我想使用“announcements”而不是上面的粗体部分。如果我使用英语、土耳其语和西班牙语,我想使用“announcements|duyurular|anuncios”。
如果我像下面这样,我会收到错误,因为属性接受常量字符串变量:
[Route("{leftPath:values(" + GetRouteValues() + ")}/{announceUrl?}")]
public ActionResult Announcements(string leftPath, string announceUrl)
{
ViewBag.Url = announceUrl;
return View();
}
有没有办法做到这一点或任何建议。
【问题讨论】:
标签: asp.net-mvc url asp.net-mvc-routing