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

dotnet add package Google.Ads.AdManager.V1 --version 1.0.0-beta01

ضبط بيانات الاعتماد

تستخدم مكتبة برامج NET .OAuth2 وبيانات الاعتماد التلقائية للتطبيق (ADC) للمصادقة.

يبحث "مدير بيانات اعتماد التطبيقات" عن بيانات الاعتماد بالترتيب في المواقع التالية:

  1. متغيّر البيئة GOOGLE_APPLICATION_CREDENTIALS
  2. بيانات اعتماد المستخدم التي تم إعدادها من خلال واجهة سطر أوامر Google Cloud ‏(gcloud CLI)
  3. عند التشغيل على Google Cloud، يتم إرفاق حساب الخدمة بمورد Google Cloud.

لإنشاء بيانات اعتماد ADC وضبطها، يُرجى الاطّلاع على المصادقة.

تقديم طلبك الأول

تحتوي كل خدمة على عنصر ServiceClient يتضمّن كلّ من الأسلوبَين المتزامن وغير المتزامن لكل طريقة REST. يقرأ المثال التالي Network بشكل متزامن. يتم تحديد جميع الكيانات من خلال اسم المورد الذي يتكون من نوع الكيان والمعرّف الرقمي له.

    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.

معالجة الأخطاء

تكون جميع الأخطاء في واجهة برمجة تطبيقات "مدير الإعلانات" من النوع Grpc.Core.RpcException في مكتبة برامج NET.

تتضمّن الأخطاء 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";
}

إنشاء أسماء الموارد

توفّر مكتبة العميل فئات مساعدة لإنشاء أسماء الموارد من المعرّفات. ويمكن تمريرها مباشرةً إلى طرق الخدمة.

//  Represents a resource name in the format:
//  "networks/{networkCode}/orders/{orderId}"
OrderName name = OrderName.FromNetworkCodeOrder("123", "456");
Order response = orderServiceClient.GetOrder(name);