我有张MySqlDB和一张桌子
CREATE TABLE `pp` (
[...]
`Title` varchar(255) CHARACTER SET latin1 DEFAULT NULL,
[...]
) ENGINE=InnoDB DEFAULT CHARSET=cp1251
该表由 PHP 组成, 并有一个工作 PHP 脚本读取数据并将其写入网页。 PHP 使用“ windows-1251” 编码并正常工作 。
服务器侧的变量为:
character_set_client:latin1
character_set_connection:latin1
character_set_database:utf8
character_set_filesystem:binary
character_set_results:latin1
character_set_server:latin1
character_set_system:utf8
I am working on an ASP.NET MVC3 application that (among other things) reads that data and shows them in a windows-1251 encoded view. I use MySql .NET Connector v.6.5.4 to connect to DB and read data.
问题在于:由此形成的网页(即视图)上的闪烁数据被损坏。
我尝试了各种连接线
charset=cp1251 or
charset=latin1 or
charset=utf8
此外,我还研究过执行
SET NAMES cp1251 or
SET NAMES latin1 or
SET NAMES utf8
在连接之后,但没有任何成功。
在PHP中,一切都很好;在ASP.NET中,情况并非如此。
我知道闪石文字不应该存储在 拉丁一列中, PHP 工作正常, 因为 cp1251 和 latin1 是 8 位/ 每字符编码, 没有数据转换 。 但我无法使用 ASP. NET 复制它 。
请救救我