如何在多语言 asp.net MVC 网站的 URL 中支持有语言和无语言的路由

     2023-03-14     168

关键词:

【中文标题】如何在多语言 asp.net MVC 网站的 URL 中支持有语言和无语言的路由【英文标题】:How to support routes with and without language in URL in multilingual asp.net MVC website 【发布时间】:2013-12-11 13:36:01 【问题描述】:

尝试为我当前的 mvc 项目设置本地化。 我需要配置路由以支持这两个 url:有和没有语言(例如 www.domain.com/en/about/contacts 和 www.domain.com/about/contact)。默认语言的 URL 中没有 lang 的路由。

我这样定义路线

            routes.MapRoute(
            name: "Localization",
            url: "lang/controller/action/identifier",
            defaults: new  lang = defaultLang, controller = "Home", action = "Index", identifier = UrlParameter.Optional 
        );

但我无法满足一项重要要求 - 我的默认语言路由在 URL 中应该是“无语言”,直到用户指定所需的语言。即使该语言 == defaultLanguage 我需要我的路线包含它(语言),因为它是由用户选择的。

【问题讨论】:

【参考方案1】:

解决了!

@Localization@ ​​路由应如下所示:

routes.MapRoute(
            name: "Localization",
            url: "lang/controller/action/identifier",
            defaults: new  controller = "Home", action = "Index", identifier = UrlParameter.Optional ,
            constraints: new  lang = @"[a-z]2" 
        );
不应为 lang 提供默认值 我需要为 lang 添加约束,以帮助路由器识别带有和不带有 lang_s 的 URL

【讨论】:

在 ASP.NET 应用程序中实现多语言的最佳方法

】在ASP.NET应用程序中实现多语言的最佳方法【英文标题】:BestwaytoimplementamultilingualinASP.NETapplication【发布时间】:2011-08-1021:55:01【问题描述】:在多语言应用程序中预期以下事物/行为。为登录用户的语言选择正确的资源字符串... 查看详情

ASP.NET MVC AspNetUserClaims 如何读取、写入和更新表中的数据?

】ASP.NETMVCAspNetUserClaims如何读取、写入和更新表中的数据?【英文标题】:ASP.NETMVCAspNetUserClaimsHowcanIread,writeandupdatedatainthetable?【发布时间】:2018-04-1521:27:00【问题描述】:这是我在***中的第一个问题:)所以请不要评判我强:)好的... 查看详情

asp.net mvc 在哪里设置默认文化?

...tculture?【发布时间】:2015-09-1607:51:29【问题描述】:对于多语言的asp.netmvc网站。我应该在哪里将线程的文化设置为默认语言(在我的情况下是tr-TR),此外,如果它不存在,我需要将其保存在cookie中。在Application_Start()或其他?... 查看详情

使用 OWIN 和异步方法的多语言网站

】使用OWIN和异步方法的多语言网站【英文标题】:MultilingualwebsiteusingOWINandasynchronousmethods【发布时间】:2015-08-2021:31:37【问题描述】:背景我正在使用IIS上的ASP.NET4.6、C#、OWIN管道(Microsoft.Owin.Host.SystemWeb)、大量异步方法调用和标... 查看详情

Asp.net MVC 中的重载索引操作

...布时间】:2017-11-0210:37:57【问题描述】:我正在开发一个多语言网站,我需要先设置语言,然后使用资源文件以该语言显示页面。我使用了两个这样的索引操作:usingSystem;usingSystem.Collections.Generic;usingSystem.Linq;usingSystem.Threa 查看详情

vs2005怎么制作多语言安装程序啊

还要带有能分辨管理员和非管理员的功能还有模拟用户是怎么回事我做的是windos安装程序不是web的参考技术Avs2005有很强大的成员资格管理功能,每一个完善的网站管理系统都应该包括用户管理、角色管理,都包含用户注册、密... 查看详情

如何使用 MVC 路由多语言 URL

】如何使用MVC路由多语言URL【英文标题】:HowtorouteamultiplelanguageURLwithaMVC【发布时间】:2011-01-0921:56:06【问题描述】:我需要现有控制器的多语言URL路由。让我解释一下:我有一个名为“产品”的控制器和一个名为“软件”的视... 查看详情

如何创建具有多语言路线的一页网站?

】如何创建具有多语言路线的一页网站?【英文标题】:Howtocreateonepagesitewithmultilanguagesroutes?【发布时间】:2021-03-2423:12:47【问题描述】:我正在使用Gatsby,我想使用多语言创建一个站点,到目前为止,我已经定义了pages/index.js... 查看详情

Rosetta 喜欢 ASP.NET MVC Web 应用程序的本地化?

...块,它允许您提取网站内容并使用非常漂亮的Web界面创建多语言翻译。我想知道ASP.NET框架或 查看详情

Codeigniter:如何使用数据库和用户会话数据构建多语言网站?

】Codeigniter:如何使用数据库和用户会话数据构建多语言网站?【英文标题】:Codeigniter:howtobuildmultilingualwebsiteusingdatabaseandusersessiondata?【发布时间】:2011-12-0410:41:32【问题描述】:我需要在使用Codeigniter开发的网站中实现一种切... 查看详情

多语言网站的 Django 重定向

...我正在开发一个法语和英语双语网站,我正在尝试弄清楚如何检测法语用户并将其重定向到index_fr.html(在模板文件夹中)。我的urls.py(它现在只显示英文版):urlpatterns=[url(r\'^admin/\',admin.site.urls 查看详情

在codeigniter中制作多站点和多语言网站的正确方法

...帮了很多忙。当我完成我的网站并有很多时间观察用户群如何增长时,我会一次又一次地来这里回答其他人的问题(如果可以的话)所以这就是问题所在。我在CodeIgn 查看详情

在多语言网站中格式化数字

】在多语言网站中格式化数字【英文标题】:FormatNumbersinmultilingualsite【发布时间】:2014-02-1104:55:41【问题描述】:在我的多语言网站中,我有一个li包含产品的总数<liid="totalCount"style="display:none"data-total="@numberOfItems"data-resultcount... 查看详情

如何使用 Backbone.js 增强多语言网站导航?

】如何使用Backbone.js增强多语言网站导航?【英文标题】:HowtouseBackbone.jstoenhanceamulti-languagewebsitenavigation?【发布时间】:2013-01-2317:05:31【问题描述】:我有一个多语言网站,显示几个(十几个)内容页面,漂亮的网址如下:exampl... 查看详情

如何在 Clojure 中编写多语言应用程序?

】如何在Clojure中编写多语言应用程序?【英文标题】:HowtowritemultilingualapplicationsinClojure?【发布时间】:2011-05-2714:31:05【问题描述】:我正在尝试弄清楚如何创建一个基于Compojure且支持多语言的网站。有没有像i18n之类的解决方... 查看详情

如何在 asp.net MVC 中创建定时调度程序?

】如何在asp.netMVC中创建定时调度程序?【英文标题】:HowdoIcreateatimedschedulerinasp.netMVC?【发布时间】:2019-07-0615:54:35【问题描述】:我想在一个MVC网站中为应用功能创建一个比较简单的定时事件调度功能,目前不一定针对用户,... 查看详情

如何在 asp.net MVC 中创建页面层次结构

】如何在asp.netMVC中创建页面层次结构【英文标题】:howtocreatehierarchyofpagesinasp.netMVC【发布时间】:2015-09-3019:06:24【问题描述】:我正在开发一个分类网站,该网站将包含“electronics/mobiles/samsung/samsungS3/adTitle”之类的链接。如何... 查看详情

django:如何创建一个多语言网站(代码片段)

我想在Django中创建一个多语言网站,我尝试使用django-parler但是当我想要由管理员添加一个对象时,管理员不会显示翻译字段这是我的模型的一部分:classMovie(TranslatableModel):translations=TranslatedFields(synopsis=RedactorField(verbose_name=u'Sinops... 查看详情