迁移到 .NET Admin SDK v2

Firebase Admin SDK for .NET v2.0.0 引入了一些重大更改,可能会影响您的应用代码。请查看本指南,并根据需要进行更改。

更新目标框架

Admin SDK 不再支持 netstandard1.5net45 目标框架名称。请改用 netstandard2.0net461 或更高版本。

更新使用 PagedAsyncEnumerable 类的代码

Admin SDK 提供了几个可返回 PagedAsyncEnumerable 实例的 API。此类提供了一种方式来遍历一系列项(一次一个条目,也可以按页)。由于 Admin SDK 要升级其对 Google.Api.Gax 软件包的依赖项,因此您需要更新使用 PageAsyncEnumerable 类的代码,如下所示:

之前

var pagedEnumerable = FirebaseAuth.DefaultInstance.ListUsersAsync(null);
var responses = pagedEnumerable.AsRawResponses().GetEnumerator();
while (await responses.MoveNext())
{
    ExportedUserRecords response = responses.Current;
    foreach (ExportedUserRecord user in response.Users)
    {
        Console.WriteLine($"User: {user.Uid}");
    }
}

var enumerator = FirebaseAuth.DefaultInstance.ListUsersAsync(null).GetEnumerator();
while (await enumerator.MoveNext())
{
    ExportedUserRecord user = enumerator.Current;
    Console.WriteLine($"User: {user.Uid}");
}

之后

var pagedEnumerable = FirebaseAuth.DefaultInstance.ListUsersAsync(null);
var responses = pagedEnumerable.AsRawResponses().GetAsyncEnumerator();
while (await responses.MoveNextAsync())
{
    ExportedUserRecords response = responses.Current;
    foreach (ExportedUserRecord user in response.Users)
    {
        Console.WriteLine($"User: {user.Uid}");
    }
}

var enumerator = FirebaseAuth.DefaultInstance.ListUsersAsync(null).GetAsyncEnumerator();
while (await enumerator.MoveNextAsync())
{
    ExportedUserRecord user = enumerator.Current;
    Console.WriteLine($"User: {user.Uid}");
}