У вас должен быть запрос типа:
Как вы запрашиваете из коллекции в документ, а затем собираете из документа.
Объяснение:
с родительским узлом поскольку "Split"
сначала извлекают "Split" collection
, тогда может быть несколько документов в соответствии с "authid"
, поэтому вы получите документ в соответствии с currentUser (Пользователь, который подписал, извлечен из FirebaseAuth
).
Как только вы получили document
для конкретного Пользователя в соответствии с authId
, вы получите f8 для этой конкретной коллекции пользователей из кода authId document
:
CurrentUser currentUser = FirebaseAuth.getCurrentUser();
firestore.collection("Split").document(currentUser.getUid()).collection("SendInvitation")
.get()
.addOnCompleteListener(new OnCompleteListener<DocumentSnapshot>() {
@Override
public void onComplete(@NonNull Task<DocumentSnapshot> task) {
if (task.isSuccessful()) {
//Handle Success
} else {
//Handle Error
}
}
});
В соответствии с структурой это будет запрос.
Надеюсь, что это поможет.
Две вещи способствовали этому:
Когда вы реализуете интерфейсы явно, C # ожидает, что вы сможете присвоить имя участника с именем наименее производного интерфейса, а не имя интерфейса, которое может наследовать от него.
Чтобы исправить ваш код, вам нужно сделать это:
public class User : IUser
{
string IUser<string>.UserName { get { return Email;} set { Email = value;}}
}
Пример бонуса
Вот полный пример, который генерирует одно и то же сообщение об ошибке:
public interface Base
{
string MyProperty { get; set; }
}
public interface Inherited : Base
{
}
public class Implementor : Inherited
{
string Inherited.MyProperty { get; set; }
}