c# - 在旧的 ascii postgresql 数据库中使用 npgsql entityFrameworkCore 的编码问题

标签 c# postgresql encoding npgsql

我有一个使用 ascii 编码的旧 postgresql 数据库(在生产中)。 我正在使用 npgsql entityFrameWorkCore 创建一个新的 c# .net 应用程序,但我总是遇到编码错误:

System.Text.DecoderFallbackException:无法将索引 yy 处的字节 [xx] 从指定代码页转换为 Unicode

我发现了这个类似的问题:

Cannot select some rows with npgsql on a "Portuguese" database

在该页面上可以看到添加了对非 ascii 字符的支持。 但这在 npgsql 2.2 中似乎不起作用 升级数据库是没有选择的。 知道我可以做什么来读取我的数据吗?

最佳答案

如您在上面链接的问题中所写,对非 UTF8 编码的支持已添加到 Npgsql 3.1.8 - 所以 2.2 没有它。 2.2 现在也很老了(完全没有维护/不受支持)——你应该升级到最新版本的 Npgsql(注意这并不意味着升级你的数据库)。

关于c# - 在旧的 ascii postgresql 数据库中使用 npgsql entityFrameworkCore 的编码问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55492468/

相关文章:

c# - 在 ASP.NET 5 中为 Web API Controller 模拟 HttpContext

c# - 泛型类型推断解释

python - 如何只删除 postgres 中的行而不是使用 pandas read_sql_query 方法删除表?

sql-server - SQL appending <?xml version ="1.0"encoding ="UTF-8"?> to Query output

java - 对于字符串到流的转换,默认编码为 UTF-8 可能会产生什么后果?

C# ObservableCollection 不会出现在 MVVM 的 TreeView 中

postgresql - 如何在 PostgreSQL 中自动递增?

node.js - 快速保持连接打开?

php - 帮助创建 ZIP 文件 Windows 不会阻止

c# - 有人知道在线免费数据库吗?