1

我有一些本地化路线。为此,我用 asp mvc route 属性标记我的路线,然后我为每种语言克隆它们,并使用翻译值和语言数据令牌和检查文化/语言的约束。

例如

foo.com/en/search可以用西班牙语显示为 foo.com/es/búsqueda 每个生成的路由都有一个语言数据标记“语言”。在这种情况下,值为“es”

现在我想创建“ChangeLanguage”链接。每种语言都有一个链接。我想保留整个路线数据。因此,当我在 foo.com/en/search 上单击“西班牙语”时,我想最终进入foo.com/es/búsqueda。如果有 url 参数,它们也应该被保留。

从 RouteContext 我得到带有路由值和数据令牌的当前 RouteData。但是 Url.Action 类只包含重载来传递路由数据而不是数据令牌。

如何正确创建链接?或者我怎样才能找到其他语言的等价路线?

4

0 回答 0