Как получить ошибки базы данных из базы данных Unity в реальном времени? - PullRequest
1 голос
/ 10 июля 2019

Настройка

Unity: 2019.1.6f1 Версия Firebase: 6.2.0 Продукт Firebase: База данных реального времени

Мое использование

  internal static DatabaseReference Content()
  {
     return DBReference.Child("content");
  }

Добавить данные

     CloudSession.Content().Child(_childNode).SetRawJsonValueAsync(_jsonValue).ContinueWith(
        (_task) =>
        {
            if (_task.IsCanceled == true)
            {
                Debug.Log("DB UPLOAD Cancelled -> ");

                if (_task.Exception is System.AggregateException _aggregateException)
                {
                    if (_aggregateException.InnerExceptions[0] is DatabaseException _innerException)
                    {
                        //_innerException.
                    }
                }
            }

            if (_task.IsFaulted == true)
            {
                Debug.Log("DB UPLOAD faulted -> ");
            }

            switch (_task.IsCompleted)
            {
                case true:
                    Debug.Log("New value updated!!! -> " + _childNode);
                    break;
            }
            Debug.Log("--------- DB COMPLETED ---------");
        });

Просмотреть данные

      CloudSession.Content().Child(_childNode).GetValueAsync().ContinueWith(
        (_task) =>
        {
            if (_task.IsCanceled == true)
            {
                Debug.Log("DB RETRIVE Cancelled -> " + _task.Exception);
            }

            if (_task.IsFaulted == true)
            {
                Debug.Log("DB RETRIVE faulted -> " + _task.Exception);
            }

            switch (_task.IsCompleted)
            {
                case true:
                    Debug.Log("JSON value obtained!!!");
                    DataSnapshot _snapshot = _task.Result;

            }
        });

Удалить данные

  CloudSession.Content().Child(_childNode).RemoveValueAsync().ContinueWith(
       (_task) =>
       {
           if (_task.IsCanceled == true)
           {
               Debug.Log("DB NODE DELETE Cancelled -> " + _task.Exception);
           }

           if (_task.IsFaulted == true)
           {
               Debug.Log("DB NODE DELETE faulted -> " + _task.Exception);
           }

           switch (_task.IsCompleted)
           {
               case true:
                   Debug.Log("NODE DELETE COMPLETE-> " + _childNode + " -> "+ _task.Status);
                   break;
           }
       });

Запрос

  • Как получить коды ошибок базы данных при возникновении ошибки в IsCanceled или IsFaults.Мне не удалось найти соответствующие примеры в репозитории или документации github samples. [ \ Документация по ошибкам в базе данных Firebase]
  • Есть ли какая-либо информация о том, когда и как можно получить такие ошибки?,Причина этого в том, что у меня никогда не возникало никаких «сетевых» ошибок, когда я отключал интернет на устройстве во время выполнения операций с базой данных.

Спасибо

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...