使用错误字符集呈现的 asp.net sql 查询文本

Posted

技术标签:

【中文标题】使用错误字符集呈现的 asp.net sql 查询文本【英文标题】:asp.net sql query'ed text rendered with wrong charset 【发布时间】:2012-06-15 02:27:34 【问题描述】:

我正在改造一个旧的 .net 2 网站,以获得我们新 CI 的外观和感觉。由于有剩余的钱,我被告知也要检查背后的代码。

到目前为止,我遇到了字符集的一个严重问题:在几乎所有页面上,像 ß ä ö ü 这样的德语“特殊”字符都被正确渲染。但是在一页上,每个特殊字符都像普通字符一样呈现。在这种情况下 ö --> o; ä--> 一个; ß --> ?

查询从数据库中获取的文本在调试器中正确呈现,但在浏览器中呈现后立即变得混乱。

我已将母版页和 config.web 中的字符集设置为 ISO-8859-1。

非常感谢您的帮助 - 提前致谢。

马可

【问题讨论】:

我认为您应该检查以下链接可能会对您有所帮助***.com/questions/2357759/accented-french-characters 【参考方案1】:

您是否在呈现的 html 的 head 部分设置了元标记?

啊,对不起!我误读了关于母版页的那一行。

【讨论】:

不-抱歉。跟随链接的线程没有带来任何解决方案。事实上:它根本没有改变任何东西。我尝试的最后一件事是摆脱项目中的所有字符集声明。也没有用。【参考方案2】:

问题根本与代码无关。 设置机器的管理员没有使用我们通常使用的普通 Oracle 客户端。相反,他只是复制了即时客户端,设置了 TNS_NAMES.ORA 并完成了它。

这是wy,注册表中从来没有Oracle条目,告诉客户端使用哪个字符集。

我没有理会它,而是将它作为环境变量推过去

    NLS_LANG = German.Germany.Charset.

问题解决了。

【讨论】:

以上是关于使用错误字符集呈现的 asp.net sql 查询文本的主要内容,如果未能解决你的问题,请参考以下文章

在 ASP.NET 5 中将 Razor 视图呈现为字符串

在 asp.net 中使用查询字符串参数选择列

ASP.NET C# SQL 提交错误

问:如何在 ASP.NET Core 中执行查询字符串?

如何将 ASP.NET MVC 视图呈现为字符串?

使用asp.net mv在ado.net中选择带有where子句的查询