.NET
透過集合功能整理內容
你可以依據偏好儲存及分類內容。
Google 提供 .NET 用戶端程式庫,可用於與 Ad Manager API 互動。建議您搭配 NuGet 使用用戶端程式庫。
如要開始使用,請在所選 IDE 中建立新專案,或將依附元件新增至現有專案。Google 會將用戶端程式庫構件發布至 NuGet 存放區,並以 Google.Ads.AdManager.V1
的形式呈現。
套件參考
<!-- MyProject.csproj -->
<PackageReference Include="Google.Ads.AdManager.V1" Version="1.0.0-beta01" />
.NET CLI
dotnet add package Google.Ads.AdManager.V1 --version 1.0.0-beta01
.NET 用戶端程式庫會使用 OAuth2 和應用程式預設憑證 (ADC) 進行驗證。
ADC 會依序在下列位置搜尋憑證:
GOOGLE_APPLICATION_CREDENTIALS
環境變數。
- 透過 Google Cloud CLI (gcloud CLI) 設定的使用者憑證。
- 在 Google Cloud 上執行時,服務帳戶會連結至 Google Cloud 資源。
如要建立及設定 ADC 憑證,請參閱「驗證」。
提出第一個要求
每項服務都有一個 ServiceClient
物件,其中包含每個 REST 方法的同步和非同步方法。以下範例會同步讀取 Network
。系統會使用資源名稱識別所有實體,其中包含實體的類型和數字 ID。
using Google.Ads.AdManager.V1;
public sealed partial class GeneratedNetworkServiceClientSnippets
{
public void GetNetwork()
{
// Create client
NetworkServiceClient networkServiceClient = NetworkServiceClient.Create();
// Initialize request argument(s)
string name = "networks/[NETWORK_CODE]";
// Make the request
Network response = networkServiceClient.GetNetwork(name);
}
}
如需其他方法和資源的範例,請參閱 GitHub 存放區 googleapis/google-cloud-dotnet
。
處理錯誤
所有 Ad Manager API 錯誤都是 .NET 用戶端程式庫中的 Grpc.Core.RpcException 類型。
錯誤訊息中會包含專屬的 request_id
,您可以將這項資訊提供給支援團隊,以便協助排除問題。以下範例會擷取 HTTP 狀態、錯誤訊息和 request_id
。
using Google.Ads.AdManager.V1;
using Google.Api.Gax.Grpc;
using Google.Rpc;
using Grpc.Core;
try
{
NetworkServiceClient networkServiceClient = NetworkServiceClient.Create();
Network network = networkServiceClient.GetNetwork("networks/[NETWORK_CODE]");
}
catch(RpcException e)
{
// HTTP Status code
StatusCode statusCode = e.Status.StatusCode;
// Error message
string errorMessage = e.Status.Detail;
// Unique request identifier.
RequestInfo requestInfo = e.GetStatusDetail<RequestInfo>();
string requestId = requestInfo?.RequestId ?? "Unexpected null request identifier";
}
建構資源名稱
用戶端程式庫提供輔助類別,可從 ID 建立資源名稱。這些值可直接傳遞至服務方法。
// Represents a resource name in the format:
// "networks/{networkCode}/orders/{orderId}"
OrderName name = OrderName.FromNetworkCodeOrder("123", "456");
Order response = orderServiceClient.GetOrder(name);
.NET 用戶端程式庫會遵循 HttpClient.DefaultProxy
屬性,包括從環境變數 HTTP_PROXY
和 HTTPS_PROXY
設定 Proxy。詳情請參閱 HttpClient.DefaultProxy 屬性。
除非另有註明,否則本頁面中的內容是採用創用 CC 姓名標示 4.0 授權,程式碼範例則為阿帕契 2.0 授權。詳情請參閱《Google Developers 網站政策》。Java 是 Oracle 和/或其關聯企業的註冊商標。
上次更新時間:2025-09-02 (世界標準時間)。
[null,null,["上次更新時間:2025-09-02 (世界標準時間)。"],[[["\u003cp\u003eGoogle provides a .NET client library, accessible via NuGet, for seamless interaction with the Ad Manager API.\u003c/p\u003e\n"],["\u003cp\u003eThe library utilizes Application Default Credentials (ADC) for authentication, prioritizing environment variables, Google Cloud CLI credentials, and service accounts.\u003c/p\u003e\n"],["\u003cp\u003eDevelopers can leverage \u003ccode\u003eServiceClient\u003c/code\u003e objects with synchronous and asynchronous methods to access various Ad Manager resources, such as networks.\u003c/p\u003e\n"],["\u003cp\u003eError handling is facilitated through Grpc.Core.RpcException, providing access to status codes, messages, and request IDs for troubleshooting.\u003c/p\u003e\n"],["\u003cp\u003eResource names can be easily constructed using helper classes, enabling efficient interaction with specific Ad Manager entities.\u003c/p\u003e\n"]]],["The Google Ad Manager API .NET client library, available via NuGet as `Google.Ads.AdManager.V1`, uses OAuth2 and Application Default Credentials (ADC) for authentication. To make requests, create a `ServiceClient` object, and utilize synchronous or asynchronous methods. Resource names, formatted with IDs, can be constructed using helper classes. Error handling involves catching `RpcException`, retrieving the status code, message, and `request_id`. The library also supports proxy configuration through the `HttpClient.DefaultProxy` property and environment variables.\n"],null,["Google provides a .NET client library for interacting with the Ad Manager API.\nWe recommend using the client library with NuGet.\n\nTo get started, create a new project in the IDE of your choice or add the\ndependency to an existing project. Google publishes client library artifacts to\nNuGet repository as\n[`Google.Ads.AdManager.V1`](//www.nuget.org/packages/Google.Ads.AdManager.V1). \n\nPackage Reference \n\n \u003c!-- MyProject.csproj --\u003e\n \u003cPackageReference Include=\"Google.Ads.AdManager.V1\" Version=\"1.0.0-beta01\" /\u003e\n\n.NET CLI \n\n dotnet add package Google.Ads.AdManager.V1 --version 1.0.0-beta01\n\nConfigure credentials\n\nThe .NET client library uses OAuth2 and [Application Default Credentials](//cloud.google.com/docs/authentication/application-default-credentials)\n(ADC) to authenticate.\n\nADC searches for credentials in order in the following locations:\n\n1. `GOOGLE_APPLICATION_CREDENTIALS` environment variable.\n2. User credentials set up through the Google Cloud CLI (gcloud CLI).\n3. When running on Google Cloud, the service account attached to the Google Cloud resource.\n\nFor creating and configuring your ADC credentials, see\n[Authentication](/ad-manager/api/beta/authentication).\n\nMake your first request\n\nEach service has a `ServiceClient` object with both synchronous and asynchronous\nmethods for each REST method. The following example reads a [`Network`](/ad-manager/api/beta/reference/rest/v1/networks)\nsynchronously. All entities are identified by a\n[resource name](#construct_resource_names) consisting of the type and numeric\nidentifier of the entity. \n\n using Google.Ads.AdManager.V1;\n\n public sealed partial class GeneratedNetworkServiceClientSnippets\n {\n public void GetNetwork()\n {\n // Create client\n NetworkServiceClient networkServiceClient = NetworkServiceClient.Create();\n // Initialize request argument(s)\n string name = \"networks/[NETWORK_CODE]\";\n // Make the request\n Network response = networkServiceClient.GetNetwork(name);\n }\n } \n https://github.com/googleapis/google-cloud-dotnet/blob/f7caa4b1d158434eb1cf5c4a185428b6419ee32b/apis/Google.Ads.AdManager.V1/Google.Ads.AdManager.V1.GeneratedSnippets/NetworkServiceClient.GetNetworkSnippet.g.cs#L20-L41\n\nFor examples of other methods and resources, see the GitHub repository\n[`googleapis/google-cloud-dotnet`](//github.com/googleapis/google-cloud-dotnet/apis/Google.Ads.AdManager.V1/Google.Ads.AdManager.V1.GeneratedSnippets).\n\nHandle errors\n\nAll Ad Manager API errors are of the type\n[Grpc.Core.RpcException](//cloud.google.com/dotnet/docs/reference/Grpc.Core/latest/Grpc.Core.RpcException)\nin the .NET client library.\n\nErrors include a unique `request_id` you can\nprovide to [support](/ad-manager/api/beta/support) for assistance with\ntroubleshooting. The following example extracts the HTTP status, error message,\nand `request_id`. \n\n using Google.Ads.AdManager.V1;\n using Google.Api.Gax.Grpc;\n using Google.Rpc;\n using Grpc.Core;\n\n try\n {\n NetworkServiceClient networkServiceClient = NetworkServiceClient.Create();\n Network network = networkServiceClient.GetNetwork(\"networks/[NETWORK_CODE]\");\n }\n catch(RpcException e)\n {\n // HTTP Status code\n StatusCode statusCode = e.Status.StatusCode;\n // Error message\n string errorMessage = e.Status.Detail;\n // Unique request identifier.\n RequestInfo requestInfo = e.GetStatusDetail\u003cRequestInfo\u003e();\n string requestId = requestInfo?.RequestId ?? \"Unexpected null request identifier\";\n }\n\nConstruct resource names\n\nThe client library provides helper classes for building resource names from\nIDs. These can be passed directly to service methods. \n\n // Represents a resource name in the format:\n // \"networks/{networkCode}/orders/{orderId}\"\n OrderName name = OrderName.FromNetworkCodeOrder(\"123\", \"456\");\n Order response = orderServiceClient.GetOrder(name);\n\nConfigure proxy settings\n\nThe .NET client library respects the `HttpClient.DefaultProxy` property\nincluding setting proxies from the environment variables `HTTP_PROXY` and\n`HTTPS_PROXY`. For more details, see\n[HttpClient.DefaultProxy Property](//learn.microsoft.com/en-us/dotnet/api/system.net.http.httpclient.defaultproxy)."]]