Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/asp.net-core/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 如何在ASP.Net核心页面中组织多语言URL?_C#_Asp.net Core_Razor - Fatal编程技术网

C# 如何在ASP.Net核心页面中组织多语言URL?

C# 如何在ASP.Net核心页面中组织多语言URL?,c#,asp.net-core,razor,C#,Asp.net Core,Razor,ASP.NET核心2.2.0 我正在ASP.NET核心中寻找基于语言的URL。在网上找到了许多.NET核心MVC的示例,但无法在Razor页面中运行 我想要实现的是: domain.com/informatie->默认语言“信息”页面链接(荷兰语) domain.com/en/information->链接到相同的英文页面 因此,我需要2个特性: 识别url中的语言,或在未提供语言标记时设置默认语言 翻译我的页面模型的名称 我将编写一个自定义方法来翻译内容 最合适的例子 我发现有两个示例与我

ASP.NET核心2.2.0

我正在ASP.NET核心中寻找基于语言的URL。在网上找到了许多.NET核心MVC的示例,但无法在Razor页面中运行

我想要实现的是:

  • domain.com/informatie->默认语言“信息”页面链接(荷兰语)
  • domain.com/en/information->链接到相同的英文页面
因此,我需要2个特性:

  • 识别url中的语言,或在未提供语言标记时设置默认语言
  • 翻译我的页面模型的名称
  • 我将编写一个自定义方法来翻译内容

    最合适的例子 我发现有两个示例与我想要的几乎相同,但它们使用的是MVC:

    第二个看起来不错,我试图为Razor页面重写它,但被困在
    本地化控制器.cs
    (因为我使用的不是控制器,而是页面模型)
    CultureActionLinkTagHelper.cs
    (我使用asp页面属性)


    是否有人在Razor页面中修复了此问题,并且愿意共享代码?或者有谁能帮我渡过难关

    您需要考虑全球化/本地化来构建应用程序

    这是来自微软的消息

    您可能会发现本教程非常有用,它适用于DotNetCore 2.1 Razor页面,但也适用于2.2


    此外,她是GitHub的一名工程师,查阅了教程,这对我帮助很大。但我最后缺少的链接是如何翻译页面模型(url中的页面名称)。这也可能吗?你想以英语的
    和西班牙语的
    为例吗?如果是这样的话,我不愿意这样做,这会给路由添加一个复杂的逻辑,而且这并不是真的必要。只本地化显示文本就足够了。是的,这就是我想要的。我们有一家国际公司,在全世界销售产品,甚至销售给不会说英语或不懂英语的人。我真的很想让每个人都能理解我们的网址。在这个例子中,这是一个非常简单的逻辑,但它是为MVC而不是Razor编写的。@CribAd我一直在寻找在MVC中实现这一点,我很惊讶这似乎不是一件常见的事情-我同意你的观点,对于我们的非英语客户来说,很高兴能给他们提供他们能够理解的URL。毕竟MVC的驱动力是“使URL可被黑客攻击”。。。我知道你在找剃须刀页面,但我很高兴你找到了我可以在MVC中尝试的东西@克丽珊帕特尔,不客气!事实上,这两个链接的示例对于MVC来说非常棒!