我尝试序列化/反序列化以下类对象:
public class LiveDataFeedModuleConfiguration
{
public Dictionary<VendorID, dynamic> LiveDataFeedAPIConfigurations { get; private set; }
public LiveDataFeedModuleConfiguration(Dictionary<VendorID, dynamic> liveDataFeedAPIConfigurations)
{
this.LiveDataFeedAPIConfigurations = liveDataFeedAPIConfigurations;
}
public void AddElement(VendorID vendorId, dynamic liveDataFeedAPIConfiguration)
{
LiveDataFeedAPIConfigurations.Add(vendorId, liveDataFeedAPIConfiguration);
}
}
我尝试了 ServiceStack,但是当我反序列化存储为字典值的动态对象时,它是空的。我也尝试过 Json.Net,但我不喜欢字典在反序列化后包含 JObjects。我只是想LiveDataFeedModuleConfiguration
返回一个类型的对象,其中包含Dictionary<VendorID, dynamic>
我可以轻松地将 .Net 从动态类型转换为已知对象类型的位置。Json.net 中有没有办法绕过 JObject “混乱”并正确反序列化为存储在字典值中的类型?我用过Newtonsoft.Json.JsonConvert.DeserializeObject<LiveDataFeedModuleConfiguration>(string jsonContent);
。但它反序列化为不需要的 jObject 类型的字典值。
欢迎使用 json.net 的任何解决方案(假设,我可以在通用反序列化方法中完成正确的序列化)或其他库。
谢谢