Compatibilité avec gRPC

Jusqu'à la version 13.0.2, la bibliothèque .NET de l'API Google Ads utilisait la bibliothèque Grpc.Core pour la fonctionnalité gRPC. Depuis la version 14.0.0 de la bibliothèque cliente, nous utilisons Grpc.Net.Client comme bibliothèque par défaut pour les fonctionnalités gRPC, avec Grpc.Core comme solution de remplacement. Ce guide aborde les détails techniques liés à ce changement.

Motif du changement

L'arrêt de Grpc.Core est programmé, et Grpc.Net.Client est l'implémentation C# officielle de gRPC à l'avenir. Lire l'annonce

Modifications apportées à la bibliothèque .NET de l'API Google Ads

Dans le cadre de ce changement, nous avons apporté les modifications suivantes à notre bibliothèque cliente.

  1. Introduction d'un nouveau paramètre GoogleAdsConfig nommé UseGrpcCore.

    • Ce paramètre est défini par défaut sur false.
    • Lorsque ce paramètre est défini sur false, la bibliothèque tente d'utiliser Grpc.Net.Client comme couche de transport sous-jacente lorsque cela est possible.

      Grpc.Net.Client n'est pas compatible avec certaines anciennes versions de l'environnement d'exécution .NET (voir les exigences). Sur ces plates-formes, la bibliothèque .NET de l'API Google Ads utilise la bibliothèque Grpc.Core comme couche de transport sous-jacente.

    • Vous pouvez forcer la bibliothèque .NET de l'API Google Ads à utiliser la bibliothèque Grpc.Core en permanence en définissant UseGrpcCore sur true.

  2. La bibliothèque .NET de l'API Google Ads dépend du package Google.Api.Gax.Grpc (qui fait partie du SDK Google Cloud). En raison de la modification de la bibliothèque gRPC, la version majeure de .NET Framework a été mise à jour vers la version 4.0.0 et les exigences d'exécution sont remplacées par la version 2 .1 de.NET Standard.

    Par conséquent, l'exigence d'environnement d'exécution de la bibliothèque .NET de l'API Google Ads a été mise à jour vers la version 2.1 de la version standard.NET. La bibliothèque de l'API Google Ads reste compatible avec .NET Framework 4.7.2+ et .NET Framework 5.0+.