Как дождаться окончания одной строки кода, прежде чем начинать следующую в Unity? - PullRequest
0 голосов
/ 10 октября 2018

Мне нужно выполнить эти две строки кода.

 reference.Child("users").Child(userId).SetRawJsonValueAsync(json);
 reference.Child("users").Child(userId).SetValueAsync(email);

Он обновляет базу данных Firebase и создает конфликты записи при добавлении нескольких записей одновременно.Мне известно, что Async естественным образом выполняет строку кода во время первого обновления, но я не знаю ни одной подобной команды для ее замены.

В документации Firebase есть примеры, использующие объекты словаря и транзакции, ноМне не удалось записать в базу данных с использованием этих методов, и мне потребовалась неделя, чтобы выяснить правильный синтаксис, так как я очень новичок в программировании.Может ли кто-нибудь помочь мне с решением?

Ответы [ 2 ]

0 голосов
/ 10 октября 2018

Как сказал Джонатон Чейз, вы должны сделать что-то вроде этого:

public async Task MyMethod()
{
    await reference.Child("users").Child(userId).SetRawJsonValueAsync(json);
    await reference.Child("users").Child(userId).SetValueAsync(email);
}
0 голосов
/ 10 октября 2018

Вы можете попробовать это так:

 await reference.Child("users").Child(userId).SetRawJsonValueAsync(json);
 await reference.Child("users").Child(userId).SetValueAsync(email);

Ключ - , ожидающий перед асинхронным методом.

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