0
如果我有一本字典并添加例如一个类MyClass的实例到这个字典,我如何确保字典的反序列化和序列化包含类而不是JObject?使用JSON.NET反序列化和序列化字典<字符串,对象>
internal class MyClass
{
public string MyProperty { get; set; }
}
[TestMethod]
public async Task DebugTest()
{
Dictionary<string, object> testDictionary = new Dictionary<string, object>();
testDictionary.Add("testkey", new MyClass() { MyProperty = "testproperty" });
string json = JsonConvert.SerializeObject(testDictionary);
Dictionary<string, object> restoredDictionary = JsonConvert.DeserializeObject<Dictionary<string, object>>(json);
}
testDictionary包含MyClass,但restoredDictionary包含JObject。请注意,我将不得不使用字符串,对象。所以我真的想要一种方式来告诉Json.Net转换为类而不是JObject
尝试'var restoredDictionary = JsonConvert.DeserializeObject>(json);' –
用'Dictionary替换您的testDictionary和restoredDictionary'..为什么要使用对象? –
Vandita
我想使用字符串,对象来捕捉不同类型的对象(如MyClassA,MyClassB等)。它是ObjectConverters的更大对象模型的一部分。这部分工作很好,只是字典是一个问题。 – MortenGR