【问题标题】:localized routes solution本地化路线解决方案
【发布时间】:2011-09-24 02:56:38
【问题描述】:

我构建了一个法语/英语应用程序,我想为两种语言使用相同的控制器/视图,但有一个映射到当前语言的不同路由。假设我有website.com/Account/Register 返回到我的帐户控制器和注册操作,我希望有一个路由是website.com/Comptes/Inscription。我知道我可以像这样在 RegisterRoute 部分添加自定义路由:

routes.MapRoute(
                "AccountFr", // Route name
                "comptes/inscription", // URL with parameters
                new { controller = "Account", action = "Register" } // Parameter defaults
            );

但是它需要大量 [无聊] 代码来编写所有可能的路线,而且,我认为当我使用 T4MVC 时它不会工作,因为@Url.Action(MVC.Account.Register()) 将返回 /Account/Register 不管我' m 法语或英语。

有人对此问题提出建议/想法吗?

谢谢!

编辑

既然使用 T4MVC 似乎没有好的解决方案,那么有人有其他好的解决方案吗?

【问题讨论】:

  • 那么您希望控制器的行为方式相同,还是执行不同的操作?即这两条路线在行为方面是否完全相同?
  • 同样的问题...有什么解决办法吗?
  • @Subgurim,我还没有找到好的解决方案,如果有请告诉我!

标签: asp.net-mvc-3 localization routing t4mvc


【解决方案1】:

不幸的是,这不适用于 T4MVC。问题的根源在于,当通过 T4MVC 时,您无法选择特定的路线。相反,路由是根据控制器、动作和参数选择的。

【讨论】:

    猜你喜欢
    • 2012-06-14
    • 2021-04-10
    • 2018-02-23
    • 1970-01-01
    • 2011-06-24
    • 1970-01-01
    • 2013-06-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多