В .NET 4.0 есть стандартные средства для работы с JSON. Как вариант - DataContractJsonSerializer. Вот пример его использования. Описываете структуры данных:
[DataContract]
public class ProfileType
{
[DataMember]
public int ProfileTypeIDT { get; set; }
[DataMember]
public string SingularName { get; set; }
[DataMember]
public string PluralName { get; set; }
[DataMember]
public ProfileField[] Fields { get; set; }
}
[DataContract]
public class ProfileField
{
[DataMember]
public int ProfileFieldIDT { get; set; }
[DataMember]
public int ProfileTypeIDT { get; set; }
[DataMember]
public string FieldName { get; set; }
[DataMember]
public string DataType { get; set; }
[DataMember]
public int Length { get; set; }
}
А потом вот так десериализуете данные:
byte[] byteArray = Encoding.Unicode.GetBytes(jsonString);
MemoryStream stream = new MemoryStream(byteArray);
DataContractJsonSerializer serializer = new DataContractJsonSerializer(typeof(ProfileType[]));
ProfileType[] profileTypes = (ProfileType[])serializer.ReadObject(stream);