.NET 客户端库

.NET 客户端库托管在 GitHub 上,并以 NuGet 软件包的形式分发。它提供了多项功能来帮助您使用该 API,包括更轻松地管理凭据和创建 Google Ads API 服务客户端。

该库支持以下 .NET 框架:

  • .NET Framework 4.7.2 及更高版本 (net472)
  • .NET Standard 2.1 (netstandard2.1)
  • .NET 8.0 (net8.0)

.NET Standard 2.1 与其他多个 .NET 版本和实现兼容,因此该库在许多其他平台上可能也能正常运行。 不过,我们尚未正式测试兼容性,因此不正式支持这些平台。如需了解详情,请参阅 .NET Standard 2.1 文档。

Google Ads API .NET 库使用 Grpc.Net.Client 作为默认传输层,在不受支持的平台上会回退到 Grpc.Core。虽然您可以通过将 UseGrpcCore 设置为 true 来强制使用 Grpc.Core,但请注意,Grpc.Core 已弃用,仅用于旧版维护。如需了解详情,请参阅基本使用指南。

安装

使用 dotnet 命令行工具在项目中安装 Google.Ads.GoogleAds NuGet 软件包:

dotnet add package Google.Ads.GoogleAds

如需从 appsettings.json、App.config 或环境变量加载配置设置,请同时安装 Google.Ads.GoogleAds.Extensions 软件包:

dotnet add package Google.Ads.GoogleAds.Extensions

进行首次 API 调用

如需使用 Google Ads API,您需要执行几个步骤来获取对该 API 的访问权限并配置 Google Ads 账号。请按照快速入门指南操作,该指南会引导您完成所有重要步骤,包括设置 Google Ads 账号。

基本用法

使用您的配置设置初始化 GoogleAdsConfig 和 GoogleAdsClient,检索 GoogleAdsServiceClient,并使用 SearchStream 流式传输广告系列行:

using System;
using Google.Ads.Gax.Config;
using Google.Ads.GoogleAds.Config;
using Google.Ads.GoogleAds.Lib;
using Google.Ads.GoogleAds.V26.Errors;
using Google.Ads.GoogleAds.V26.Services;

GoogleAdsConfig config = new GoogleAdsConfig()
{
    OAuth2Mode = OAuth2Flow.APPLICATION,
    OAuth2ClientId = "INSERT_CLIENT_ID.apps.googleusercontent.com",
    OAuth2ClientSecret = "INSERT_CLIENT_SECRET",
    OAuth2RefreshToken = "INSERT_REFRESH_TOKEN",
    LoginCustomerId = "INSERT_LOGIN_CUSTOMER_ID_HERE"
};

GoogleAdsClient client = new GoogleAdsClient(config);
GoogleAdsServiceClient googleAdsService =
    client.GetService(Services.V26.GoogleAdsService);

string customerId = "INSERT_CUSTOMER_ID_HERE";
string query =
    "SELECT campaign.id, campaign.name FROM campaign ORDER BY campaign.id";

try
{
    googleAdsService.SearchStream(
        customerId,
        query,
        delegate (SearchGoogleAdsStreamResponse response)
        {
            foreach (GoogleAdsRow row in response.Results)
            {
                Console.WriteLine(
                    $"Campaign ID {row.Campaign.Id}: {row.Campaign.Name}");
            }
        });
}
catch (GoogleAdsException ex)
{
    Console.WriteLine($"Request ID {ex.RequestId} failed: {ex.Message}");
}

如需详细了解如何使用 .NET 客户端库,请参阅基本使用指南。

授权和身份验证

.NET 客户端库支持多种身份验证和授权方法,包括 OAuth 2.0 用户凭证(适用于桌面和 Web 应用)、服务账号、应用默认凭证(v24.1.0 及更高版本)和手动凭证注入(v27.0.0 及更高版本)。如需了解详情,请参阅授权和身份验证指南。

配置和日志记录

.NET 客户端库支持使用运行时对象、appsettings.json 或自定义 JSON 文件、环境变量或 App.config 文件来配置多个配置和日志记录选项。如果您需要修改客户端库的日志记录行为,请参阅自定义 gRPC 拦截器指南。

实用程序

.NET 客户端库包含可提高 API 易用性的实用程序类,包括媒体和视频上传辅助程序(UploadVideo 位于 v27.2.0 及更高版本中)。请参阅以下指南了解详情:

微调应用性能

如需了解如何微调应用性能,请参阅性能调优指南。