我有一个这样的字符串转义字符的字符串:反序列化使用JsonConvert
"[
{
\"SomeProperty\": 22
}
]"
我试图把它反序列化到已知类型的列表:
string toProcess = [email protected]"[{text}]".Replace("\n", ",");
toProcess = Regex.Unescape(toProcess);
List<KnownType> objectList = JsonConvert.DeserializeObject<List<KnownType>>(toProcess);
但是我看到它试图对包含\"
字符的字符串进行反序列化,并且它与Cannot deserialize the current JSON object
一起失败。我如何正确反序列化这个?
您的字符串不是有效的JSON。所以你不能反序列化它。您可以使用https://jsonlint.com/来验证这一点。此外,有效的JSON字符串在反序列化之前不需要任何操作。因此我认为你的方法是不正确的。 – Christos
你确定你的json完全像这样,还是你在调试器窗口中看到的? –
@Christos我正在使用的字符串不是有效的JSON。我试图使其有效JSON。 – SB2055