对于Newtonsoft.Json 8,TypeNameAssemblyFormatHandling等效

时间:2018-02-07 22:11:41

标签: c# .net json.net

我正在修改Rust(游戏)专用服务器,该服务器随Newtonsoft.Json版本8.0.0.0一起提供。如果有人知道8.0.0.0对此有何意义,它会帮助我很多。

string json = JsonConvert.SerializeObject(t, new JsonSerializerSettings
{
    TypeNameHandling = TypeNameHandling.Objects,
    TypeNameAssemblyFormatHandling = TypeNameAssemblyFormatHandling.Simple
});

我可以从newtonsoft的文档中找到最佳答案......

new JsonSerializerSettings
{
     TypeNameHandling = TypeNameHandling.Objects,
     TypeNameAssemblyFormat = System.Runtime.Serialization.Formatters.FormatterAssemblyStyle.Simple
});

但它没有达到预期的效果,程序集版本号仍然存在。有谁知道怎么做?

我得到的Json字符串

"$type": "Oxide.Ext.GameStateMachine.StateMachine, plugins_24206636",
  "current_state": {
    "$type": "Oxide.Ext.GunGame.GunGameState, plugins_24206636",
    "player_stats": {
      "$type": "System.Collections.Generic.Dictionary`2[[System.UInt64, mscorlib],[Oxide.Ext.GunGame.GunGamePlayerStats, plugins_24206636]], mscorlib"
    },

异常。当我尝试使用相同的JsonSerializerSettings进行反序列化时,我得到的消息...

https://i.gyazo.com/3d7a218cc0d4a3a223723ad578973ebd.png

0 个答案:

没有答案