using Newtonsoft.Json.Linq;
using System.Collections.Generic;
public static void Main()
string response = @"{""Response"":{""ResponseStatus"":{""Code"":""1"", ""Description"":""Success""}}, ""SuggestedUserID"":[""userId1"", ""userId2""]}";
RootCls result = JsonConvert.DeserializeObject<RootCls>(response);
Console.WriteLine(JsonConvert.SerializeObject(result.SuggestedUserID[0]));
public ResponseStatus1 ResponseStatus { get; set; }
public class ResponseStatus1
public string Code { get; set; }
public string Description { get; set; }
public Response1 Response { get; set; }
[JsonConverter(typeof(ObjectListConverter2<string>))]
public List<string> SuggestedUserID { get; set; }
public class ObjectListConverter2<T> : JsonConverter
public override void WriteJson(JsonWriter writer, object value, JsonSerializer serializer)
JToken t = JToken.FromObject(value);
public override List<T> ReadJson(JsonReader reader, Type objectType, object existingValue, JsonSerializer serializer)
if (reader.TokenType == JsonToken.StartArray)
return JToken.Load(reader).ToObject<List<T>>();
else if (reader.TokenType == JsonToken.StartObject)
return new List<T> { JToken.Load(reader).ToObject<T>() };
else if (reader.TokenType == JsonToken.Null)
throw new JsonException();
public override bool CanConvert(Type objectType)
return objectType == typeof(List<T>) || objectType == typeof(T);