网上众说纷纭,比如怀疑是本地查看数据的客户端有问题,修改数据库客户端的字符集;有怀疑数据库字符集有问题的或者说不要使用OracleClient,使用Oracle.DataAccess或者OraOleDb.Oracle等等
最后,
本着一条信仰,相信微软不可能对Oracle的支持做的这么烂,终于找到了问题的所在,只需要修改配置文件的连接即可。
<
connectionStrings>
< add name="OracleOA" connectionString=" Data Source=(DESCRIPTION=(ADDRESS=(PROTOCOL=TCP)(HOST=127.0.0.1)(PORT=1521))(CONNECT_DATA=(SERVICE_NAME=orcl)));User Id=SCOTT;Password=alex; Unicode=True; " providerName ="System.Data.OracleClient" />
</ connectionStrings>
< add name="OracleOA" connectionString=" Data Source=(DESCRIPTION=(ADDRESS=(PROTOCOL=TCP)(HOST=127.0.0.1)(PORT=1521))(CONNECT_DATA=(SERVICE_NAME=orcl)));User Id=SCOTT;Password=alex; Unicode=True; " providerName ="System.Data.OracleClient" />
</ connectionStrings>
加上“Unicode=True”,再插入数据,一切乱码问题都不再是问题