【问题标题】:generate url in specific language with attribute routing使用属性路由生成特定语言的 url
【发布时间】:2013-01-16 06:19:12
【问题描述】:

使用 mvc4 的属性路由并对此非常满意。

不过我有一个问题,我的网站支持 2 种语言,并且我已经本地化了我的所有网址。支持的语言是法语和英语。

当网站是英文时,我想显示一个链接以切换到法文,反之亦然。

使用属性路由,有没有办法为特定的文化/语言生成一个 url?目前,当网站是英文时,所有的 url 都是英文本地化的。我想知道是否可以用法语生成这个链接。

【问题讨论】:

  • 我试图理解您在编写“生成 url”时的意思,因为 AttributeRouting 不会生成 url——它匹配它们。能否附上代码示例?

标签: asp.net-mvc asp.net-mvc-4 localization routing attributerouting


【解决方案1】:

虽然本指南是为 MVC 2 编写的,但我认为它会有所帮助..

http://adamyan.blogspot.com/2010/02/aspnet-mvc-2-localization-complete.html

现在我们将使用受支持的文化超级创建简单的用户控件 链接。将新的局部视图添加到 Views\Shared 文件夹 CultureChooserUserControl.ascx 并粘贴如下

<%= Html.ActionLink("English", "ChangeCulture", "Account",  
     new { lang = "en", returnUrl = this.Request.RawUrl }, null)%>
<%= Html.ActionLink("Русский", "ChangeCulture", "Account",  
     new { lang = "ru", returnUrl = this.Request.RawUrl }, null)%>

我们刚刚创建了两个超链接,第一个用于英语,第二个 一种用于俄语。现在是时候放置这种文化了 选择器用户控件到 Site.Master 母版页。我会把这个添加到 对应登录功能为例。

我不是本地化专家,可能会带你走错路

【讨论】:

  • 谢谢你的回答,但是不,这不是我需要的。我的问题是关于属性路由以及它如何为特定文化生成本地化 url。
猜你喜欢
  • 2016-09-11
  • 2016-11-29
  • 2017-10-07
  • 1970-01-01
  • 2019-05-28
  • 2021-10-04
  • 2018-10-12
  • 2012-11-25
  • 2011-01-09
相关资源
最近更新 更多