代码之家  ›  专栏  ›  技术社区  ›  Venemo

如何在ASP.NET MVC应用程序中本地化控制器名称和操作?

  •  10
  • Venemo  · 技术社区  · 14 年前

    我想完全本地化我的ASP.NET MVC应用程序,虽然有许多文章处理ASP.NET MVC本地化的各种缺陷,但没有一篇文章涉及我想要处理的方面,即URL的本地化,包括控制器名称和操作。

    我想要一种方法来指定应该在URL中出现的字符串,而不是在资源文件中出现的控制器名称和操作名称。

    这是如何以理智的方式实现的?提前感谢您的帮助!

    编辑:
    我仍在寻找一种方法来做到这一点。欢迎任何帮助。
    是否已经有任何框架或lib实现了这一点?

    4 回复  |  直到 7 年前
        1
  •  7
  •   Community CDub    8 年前

    我以前从来没有这样做过,但是你不能为你想要支持的每种语言在路由表中添加一个条目吗?所有本地化的路由都可以使用您选择的语言重定向到路由。查看以下相关问题:

    Multi-lingual websites with ASP.NET MVC

    How should I implement localization with ASP.NET MVC routes?

        2
  •  4
  •   Brad Wilson    14 年前

    简短回答:不要。

    URL应该是通用的,因此位置不变。这就是为什么我们在模型绑定期间不支持本地化控制器、操作或查询字符串值的原因。

        3
  •  3
  •   Leniel Maccaferri    13 年前

    看看这个简单的解决方案:

    Translating routes (ASP.NET MVC and Webforms)

    你也可以试试 AttributeRouting 我刚找到的项目!你可以通过 NuGet .

        4
  •  0
  •   Venemo    14 年前

    考虑到本地化操作和控制器名称时尚未完成。 您仍然需要本地化任何路由参数。这对遗尿特别痛苦。

    ie www.seller.com/catalogue/list/winterthoughts www.seller.com/catalogue/list/summerthoughts其中 winterclothing summerclothing 将是枚举。

    我会说:这是可能的,但不可行。

    推荐文章