迁移到 .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}");
}