Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/asp.net/33.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
Asp.net Sitecore将页面强制转换为一种语言_Asp.net_Sitecore - Fatal编程技术网

Asp.net Sitecore将页面强制转换为一种语言

Asp.net Sitecore将页面强制转换为一种语言,asp.net,sitecore,Asp.net,Sitecore,所以我在网站上有一个部分,我希望我的所有用户都能访问我们的页面版本,因为我们还没有所有语言的翻译 如何将所有不同语言的用户发送到美国版本?对于每个语言版本,我们在URL ie中都有语言 us/pagename mx/pagename ca/pagename语言回退能为您解决此问题吗?您有两个选择: 使用回退模块,如果某个版本中不存在项,则该模块会回退到另一种语言 使用“部分”语言回退模块,该模块将回退未填充到其他语言的数据字段。在这种情况下,您只需要在每个目标语言中创建一个空的语言版本 我喜

所以我在网站上有一个部分,我希望我的所有用户都能访问我们的页面版本,因为我们还没有所有语言的翻译

如何将所有不同语言的用户发送到美国版本?对于每个语言版本,我们在URL ie中都有语言

us/pagename mx/pagename
ca/pagename

语言回退能为您解决此问题吗?您有两个选择:

  • 使用回退模块,如果某个版本中不存在项,则该模块会回退到另一种语言
  • 使用“部分”语言回退模块,该模块将回退未填充到其他语言的数据字段。在这种情况下,您只需要在每个目标语言中创建一个空的语言版本

我喜欢语言回退提供程序的想法,它基本上使任何在某种语言中没有值的字段回退到另一种语言(例如英语)

另一个选项是在
LanguageSolver
附近创建一个自定义的
HttpRequest
管道处理器,以查找站点该部分中的项目并为其解析英语:

  • 创建从HttpRequestProcessor继承的类
  • 使用代码执行
    public override void进程(HttpRequestArgs)
    以检查您是否在站点的该部分,如果是,请将
    Context.Language
    设置为英语
  • 这只是一个想法,我还没有尝试过。如果您想查看当前的
    languagesolver
    如何工作,请使用进行反编译
    Sitecore.Kernel
    ,然后查看
    Sitecore.Pipelines.HttpRequest.languagesolver