মিডিয়া ডাউনলোড করুন

1.4.0-বিটা থেকে Google API .NET ক্লায়েন্ট লাইব্রেরিতে পুনঃসূচনাযোগ্য মিডিয়া ডাউনলোড একটি বৈশিষ্ট্য। Google API-নির্দিষ্ট লাইব্রেরিতে এই বৈশিষ্ট্যটির সাথে ইন্টারঅ্যাক্ট করার সুবিধার পদ্ধতি রয়েছে।

পুনঃসূচনাযোগ্য মিডিয়া ডাউনলোড প্রোটোকলটি পুনরায় শুরু করা মিডিয়া আপলোড প্রোটোকলের অনুরূপ যা বর্ণনা করা হয়েছে, উদাহরণস্বরূপ, ড্রাইভ API-এর জন্য মিডিয়া আপলোড পৃষ্ঠায়

আগ্রহের প্রধান শ্রেণী হল MediaDownloader । পুনঃসূচনাযোগ্য মিডিয়া ডাউনলোডের এই বাস্তবায়নে, মিডিয়া বিষয়বস্তু খণ্ডে ডাউনলোড করা হয় (খণ্ড আকার কনফিগারযোগ্য)।

নমুনা কোড

যদি API-নির্দিষ্ট লাইব্রেরির পদ্ধতিতে ডিসকভারি ডকুমেন্টে " supportsMediaDownload " প্যারামিটার থাকে, তাহলে অনুরোধ ক্লাসে Download এবং DownloadAsync সুবিধার পদ্ধতিগুলি উপলব্ধ। এই পদ্ধতিগুলি আপনার সরবরাহ করা একটি Stream অবজেক্টে মিডিয়া ডেটা ডাউনলোড করে। যেমন:
{
    // Create the service using the client credentials.
    var storageService = new StorageService(new BaseClientService.Initializer()
        {
            HttpClientInitializer = credential,
            ApplicationName = "APP_NAME_HERE"
        });
    // Get the client request object for the bucket and desired object.
    var getRequest = storageService.Objects.Get("BUCKET_HERE", "OBJECT_HERE");
    using (var fileStream = new System.IO.FileStream(
        "FILE_PATH_HERE",
        System.IO.FileMode.Create,
        System.IO.FileAccess.Write))
    {
        // Add a handler which will be notified on progress changes.
        // It will notify on each chunk download and when the
        // download is completed or failed.
        getRequest.MediaDownloader.ProgressChanged += Download_ProgressChanged;
        getRequest.Download(fileStream);
    }
}

static void Download_ProgressChanged(IDownloadProgress progress)
{
    Console.WriteLine(progress.Status + " " + progress.BytesDownloaded);
}