.NET Admin SDK v2 に移行する

Firebase Admin SDK for .NET v2.0.0 では、互換性を破る変更が行われており、アプリケーション コードに影響する可能性があります。このガイドを確認し、必要に応じて変更を加えます。

ターゲット フレームワークを更新する

Admin SDK は、netstandard1.5net45ターゲット フレームワーク モニカをサポートしなくなりました。代わりに、netstandard2.0net461 以降を使用してください。

PagedAsyncEnumerable クラスを使用するコードを更新する

Admin SDK には、PagedAsyncEnumerable のインスタンスを返す API がいくつか用意されています。このクラスを使用すると、一度に 1 つのエントリまたはページごとに、アイテムのシーケンスを反復処理できます。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}");
}