适用于postgreSQL弹性伺服器和Entity Framework Core的Azure资料库无法正确显示带有重音符号的西班牙语字词

问题描述

我创建了一个Flexible Server(用于postgresql的Azure数据库),我正在使用pgadmin连接到该数据库(对UTF8进行编码),我有一个名为技能的表,并使用pgadmin可以正确显示西班牙语单词。

  • SHOW SERVER_ENCODING; UTF8
  • SHOW CLIENT_ENCODING; sql_ASCII

enter image description here

问题是当我将实体框架核心连接到该数据库时,错误显示了带有重音符号的西班牙语单词,例如:

  • Publicación(正确)
  • Publicaci \ xf3n(不正确)

当我将数据从Web API发送到数据库时,将以这种方式插入

  • Publicación

解决方法

Azure数据库中PostgreSQL灵活服务器的一个选项是“服务器参数”,

里面有一个参数:

client_encoding是SQL_ASCII,我改为UTF8

enter image description here

然后我的pgadmin正确显示带重音的西班牙语单词,这就是解决方法