问题描述:               Winform程序服务端:采用ADO.NET Entity Framework 做数据库访问,采用WCF作为服务
(IIS,basichttpbinding);              客户端:添加进行数据操作 当添加普通数据时正常,添加特殊字符(如•)时到数据库(SQL2005)时变成了“?”;已尝试:
            数据库字段类型是nvarchar类型的;
            SQL查询:  SELECT N'•',显示正常;
            修改Webconfig里面的encoding为UTF-16无效;

解决方案 »

  1.   

    服务器设置成GB2312,但客户端是UTF-8,还是无法讲特殊字符存入
      

  2.   

    ADO.NET Entity Framework 没有用过,你是指定sql吗?
    是否sql语句的特殊字符?试试看sqlParameter方式看看?
      

  3.   

    数据库一般采购Unicode编码来存储元数据信息。
    declare @a nvarchar(10) = N'Ả'
    select ASCII(@a) 
    63select CHAR (63)
    ?
    insert   @a   select   N 'ad◆ ' 
      

  4.   


    由于是直接使用ADO.NET Entity Framework,查询都是用linq,所以不像以往三层一样,可以接触到SQL语句