speichern Objekt mit String Donâ € ™ t tun es von ServiceStack und OrmLite zu MySQL.Encoding Problem beim Speichern string "Donâ € ™ t do it" von ServiceStack und Ormlite zu MySQL
Die Zeichenfolge geändert Donà ¢ Â'¬â „¢ t tun es in MySQL.
Wenn ich den Wert von MySQL lesen und wieder speichern, dann bekommen Donà¢ à ¢ â € ¢ â € šÂ¬Ã Za ¢ t tun es
Es geschah nur auf einem Windows-Server 2016 mit .net 4.62 funktioniert es unter Windows mit .net 4.62 und OSX mit Mono einwandfrei.
Version der ServiceStack-Bibliotheken ist "4.5.0"; MySQL-Version ist 5.6.23; Die Datenbanktabelle und der Spaltenzeichensatz sind UTF-8.
Es kann irgendwo sein, die falsche Codierung Flucht und wiederhole es immer wieder. Ich habe kürzlich von .net 4.5 auf 4.62 aktualisiert.
Ich kann es nicht debuggen: es arbeitet an der Entwicklung von MAC und Windows testen; Es ist nur in der Produktionsumgebung fehlgeschlagen.
Das wird "Doppelcodierung" genannt. Sogar "Dreifach-Codierung". Sie behandeln die Bytes wiederholt als latin1 und konvertieren sie dann in utf8. –