【问题标题】:Multilingual ASP.NET Web Site doesn't work多语言 ASP.NET 网站不起作用
【发布时间】:2014-06-22 08:29:14
【问题描述】:

Here is the link, where author explains how to a build multilingual website

当我运行代码时,我收到这样的错误消息“已检测到不适用于集成托管管道模式的 ASP.NET 设置。”

然后我在 web.config 文件中找到了这样的解决方法:

<configuration>
    .
    .
    .
  <system.webServer>
    <validation validateIntegratedModeConfiguration="false" />
  </system.webServer>
</configuration>

现在该网站对我有用,但仅以俄语显示,而不是英语或希腊语。我是 ASP.NET 新手,所以不清楚源的 LanguageModule 类,我应该以某种方式修改它吗?

【问题讨论】:

  • 它很复杂,如果您不了解代码的作用,那么有些人如何解释呢?首先,示例中的代码尝试从浏览器中查找要使用的语言。其次为不止一种语言制作了资源(这很困难),第三个在 html 页面上放置了语言选择。
  • 这段代码对你有用吗?你试过网站吗?我正在下载源代码并运行它,但是当我从网站中给出的超链接更改语言时,UI 语言不会改变。我做错了什么?
  • 我真的很想帮你,但是我不能调试你的代码,你给的信息也帮不上忙。真的很抱歉。是的,这段代码有效。

标签: c# asp.net multilingual app-globalresources


【解决方案1】:

在 IIS 中有 2 种类型的管道模式,集成的和经典的。您遇到的错误是您的 web.config 以经典配置排列的症状。

集成模式提供了更大的灵活性,因为 IIS 和 ASP.NET 功能在同一管道中执行,而不是一个接一个地执行。

项目可能已配置并托管在配置为在集成模式下运行的网站上。如果是这种情况,您自己将网站托管在设置为经典模式的应用程序池中,可能会让您继续前进。

要检查的另一件事是确保以正确的方式注册 HttpModule 之类的内容。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2010-09-16
    • 1970-01-01
    • 2010-09-22
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多