C# 属性路由和本地化控制器/操作名称
我想根据语言本地化我的URL,例如:C# 属性路由和本地化控制器/操作名称,c#,asp.net-mvc,localization,routing,culture,C#,Asp.net Mvc,Localization,Routing,Culture,我想根据语言本地化我的URL,例如: 我目前正在使用ASP.NET MVC 5属性路由 [RoutePrefix("{language}/recipes")] public class RecipesController : BaseController { [Route("manage")] public ActionResult Manage() { ... } } 两个问题: 将完整URL本地化是一个好主意吗 有关于如何根据
[RoutePrefix("{language}/recipes")]
public class RecipesController : BaseController
{
[Route("manage")]
public ActionResult Manage()
{
...
}
}
两个问题:
[Route("{language:regex(nl)}/recepten/beheren")]
[Route("{language:regex(en)}/recipes/manage")]
public ActionResult Index()
{
}
不确定这是否是最好的方法,但它是有效的…本地化URL绝对是个好主意。对于搜索引擎优化和可用性。你的第二种方法可能只是有点难,因为有很多翻译的页面。你不能使用CMS?这是一个定制的门户,所以没有。。。。我喜欢属性路由的方法,因为您可以在控制器动作所在的位置定义路由,但也许有一种方法可以集中执行这些转换。我尝试使用自定义约束,但总是出现异常“DefaultInlineConstraintResolver类型的内联约束解析程序无法解析以下内联约束”