Я получаю неизвестную строку из сокетного соединения.Он всегда следует формату
{
“eventType”: “playerListUpdate”
“data”: “...changes...”
}
Я десериализовываю его, используя:
var message = JsonConvert.DeserializeObject<NetworkMessage>(data);
Когда NetworkMessage выглядит следующим образом:
public class NetworkMessage
{
public string data;
public string eventType;
}
Моя проблема в том, что иногда свойство данных остается в виде строки, а иногда оно содержит массив с более сложными данными (например, результаты БД).Поэтому, когда я пытаюсь десериализовать строку с массивом в данных, происходит сбой.
Примером более сложных данных является
{"eventType":"latestPlayersList","data":[{"id":1,"firstName":"Harry"},{"id":2,"firstName":"Ted"},{"id":3,"firstName":"Michael"},{"id":4,"firstName":"Mike"}],"from":"server"}
Как я могу десериализовать строку JSON в разные VO в зависимости отна значение eventType ?