Converter Json vindo do Firebase em um Array em C# + Unity

Olá,

Estou desenvolvendo um aplicativo no Unity Engine e usando como back-end o realtime database do Firebase.

onde salvo perguntas e respostas dos usuários sem nenhum problema com o seguinte metodo:

 public void saveAsk()
    {
        key = reference.Child("Users").Child(user.UserName).Child("Asks").Child("Asks").Push().Key;
        Pergunta ask = new Pergunta();
        ask.Ask = "Like?";
        string json = JsonUtility.ToJson(ask);

        reference.Child("Users").Child(user.UserName).Child("Asks").Child("Asks").Child(key).SetValueAsync(ask.Ask).ContinueWith(task =>
        {
            if (task.IsCompleted)
            {
                //Debug.Log(key);
            }
            else
            {
                Debug.Log("Falha ao gravar os dados no banco de dados.");
            }
        });
    }

imagem de como os dados são salvo no banco de dados do firebase

Mas na hora que preciso obter os valores para exibi-los em tela eu não consigo tratar a resposta a minha requisição ao firebase.

No resumo eu faço uma consulta no banco, onde tenho um retorno de um objeto da seguinte forma

(System.Serializable)
    public class Pergunta 
    {
        public string Ask;
    }
    (System.Serializable)
    public class PRoot
    {
        public Pergunta() perguntas;
    }

    public void loadAsksUser()
    {
        FirebaseDatabase.DefaultInstance.GetReference("Users").Child(user.UserName).Child("Asks").Child("Asks")
            .ValueChanged += HandleValueChanged;
        void HandleValueChanged(object sender, ValueChangedEventArgs args)
        {
            if (args.DatabaseError != null)
            {
                return;
            }
            else
            {
                string json = args.Snapshot.GetRawJsonValue();
            }

        }
        
    }

Porém quando tento manipular os dados contidos na

string json

Eu não estou conseguindo converter isso em Array, ou uma lista para que eu possa exibir separadamente cada pergunta (no caso cada objeto contido no json separadamente) em tela.

Tentei vários jeitos que encontrei em documentações e tutoriais, minha ultima tentativa foi essa:

string json = args.Snapshot.GetRawJsonValue();
PRoot root = JsonUtility.FromJson<PRoot>(json);
Debug.Log(root.perguntas(0).Ask);

Alguém pelo amor de Deus consegue me ajudar?