إنشاء كائن عميل

مكتمل

يبدأ العمل مع أي مورد Azure باستخدام SDK بإنشاء كائن عميل. في هذا القسم، ستتعلم كيفية إنشاء كائنات العميل للتفاعل مع ثلاثة أنواع من الموارد في خدمة التخزين: حسابات التخزين والحاويات والكائنات الثنائية كبيرة الحجم.

عندما ينشئ التطبيق الخاص بك كائن عميل، يمكنك تمرير URI يشير إلى نقطة النهاية إلى منشئ العميل. يمكنك إنشاء سلسلة نقطة النهاية يدويا، كما هو موضح في الأمثلة في هذه المقالة، أو يمكنك الاستعلام عن نقطة النهاية في وقت التشغيل باستخدام مكتبة إدارة تخزين Azure.

تستخدم نماذج التعليمات البرمجية في هذه الوحدة DefaultAzureCredential للمصادقة على Azure عبر أساس أمان Microsoft Entra. تتضمن عملية المصادقة الحصول على رمز مميز للوصول للتخويل. يتم تمرير رمز الوصول هذا كبيانات اعتماد عند إنشاء مثيل للعميل، وتستمر بيانات الاعتماد طوال مدة بقاء العميل. يجب تعيين دور Azure RBAC مناسب لمدير أمان Microsoft Entra الذي يطلب الرمز المميز الذي يمنح الوصول إلى بيانات الكائن الثنائي كبير الحجم.

إنشاء كائن BlobServiceClient

يسمح عنصر BlobServiceClient المعتمد لتطبيقك بالتفاعل مع الموارد على مستوى حساب التخزين. يوفر BlobServiceClient أساليب لاسترداد خصائص الحساب وتكوينها، بالإضافة إلى سرد الحاويات وإنشاءها وحذفها داخل حساب التخزين. كائن العميل هذا هو نقطة البداية للتفاعل مع الموارد في حساب التخزين.

يوضح المثال التالي كيفية إنشاء كائن BlobServiceClient:

using Azure.Identity;
using Azure.Storage.Blobs;

public BlobServiceClient GetBlobServiceClient(string accountName)
{
    BlobServiceClient client = new(
        new Uri($"https://{accountName}.blob.core.windows.net"),
        new DefaultAzureCredential());

    return client;
}

إنشاء كائن BlobContainerClient

يمكنك استخدام كائن BlobServiceClient لإنشاء كائن BlobContainerClient جديد. يسمح لك كائن BlobContainerClient بالتفاعل مع مورد حاوية معين. يوفر BlobContainerClient أساليب لإنشاء حاوية أو حذفها أو تكوينها، ويتضمن أساليب لسرد الكائنات الثنائية كبيرة الحجم وتحميلها وحذفها داخلها.

يوضح المثال التالي كيفية إنشاء عميل حاوية من كائن BlobServiceClient للتفاعل مع مورد حاوية معين:

public BlobContainerClient GetBlobContainerClient(
    BlobServiceClient blobServiceClient,
    string containerName)
{
    // Create the container client using the service client object
    BlobContainerClient client = blobServiceClient.GetBlobContainerClient(containerName);
    return client;
}

إذا تم تحديد نطاق عملك بشكل ضيق إلى حاوية واحدة، فقد تختار إنشاء كائن BlobContainerClient مباشرة دون استخدام BlobServiceClient.

public BlobContainerClient GetBlobContainerClient(
    string accountName,
    string containerName,
    BlobClientOptions clientOptions)
{
    // Append the container name to the end of the URI
    BlobContainerClient client = new(
        new Uri($"https://{accountName}.blob.core.windows.net/{containerName}"),
        new DefaultAzureCredential(),
        clientOptions);

    return client;
}

إنشاء كائن BlobClient

للتفاعل مع مورد كائن ثنائي كبير الحجم محدد، قم بإنشاء كائن BlobClient من عميل خدمة أو عميل حاوية. يسمح لك كائن BlobClient بالتفاعل مع مورد كائن ثنائي كبير الحجم محدد.

يوضح المثال التالي كيفية إنشاء عميل كائن ثنائي كبير الحجم للتفاعل مع مورد كائن ثنائي كبير الحجم محدد:

public BlobClient GetBlobClient(
    BlobServiceClient blobServiceClient,
    string containerName,
    string blobName)
{
    BlobClient client =
        blobServiceClient.GetBlobContainerClient(containerName).GetBlobClient(blobName);
    return client;
}