简体   繁体   English

ServiceStack.Text 5.4.0 版默认 char 值序列化和反序列化

[英]ServiceStack.Text version 5.4.0 default char value serialization and deserialization

This happends JsonSerializer but not with TypeSerializer.这会发生在 JsonSerializer 上,但不会发生在 TypeSerializer 上。

Default char serialization is "\" but deserialization of that string into char is '\\'.默认字符序列化为“\”,但将该字符串反序列化为字符为“\\”。

Is this a bug?这是一个错误吗? or I am missing something?或者我错过了什么?

Any workaraound?任何解决方法? maybe some JsConfig.SerializeFn and JsConfig.DeSerializeFn?也许一些 JsConfig.SerializeFn 和 JsConfig.DeSerializeFn?

I have done a simple program to test it:我做了一个简单的程序来测试它:

public class MyObj
{
    public char AChar { get; set; }
}

public static void Main(string[] args)
{
    var obj = new MyObj();
    var json = obj.ToJson();
    System.Console.WriteLine(json);

    var newObj = json.FromJson<MyObj>();

    if (newObj.AChar == obj.AChar)
        System.Console.WriteLine("Ok!");
    else
        System.Console.WriteLine(newObj.ToJson());

}

Thanks!谢谢!

This issue should now be resolved from this commit .现在应该从此提交解决此问题。

This change is available from v5.4.1 that's now available on MyGet .此更改可从 v5.4.1 开始,现在可在 MyGet 上使用

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM