PST फ़ाइलों के साथ असिंक्रोनस ऑपरेशन

आधुनिक अनुप्रयोगों में स्केलेबिलिटी और उत्तरदायित्व बढ़ाने के लिए, Aspose.Email for .NET PST फ़ाइलों के साथ काम करने के लिए असिंक्रोनस विधियां प्रदान करता है। ये नई API डेवलपर्स को मुख्य थ्रेड को ब्लॉक किए बिना PST फ़ाइलों को बनाने, खोलने, मर्ज करने और विभाजित करने की अनुमति देती हैं, जिससे वे UI अनुप्रयोगों और उच्च-लोड सेवाओं के लिए आदर्श बनते हैं।

PST फ़ाइलों को असिंक्रोनस रूप से बनाएं

यह PersonalStorage.CreateAsync विधि आपको एक नई PST फ़ाइल असिंक्रोनस रूप से बनाने की अनुमति देती है, जिससे बड़े डेटा के साथ काम करने वाले या उत्तरदायी UI की आवश्यकता वाले अनुप्रयोगों में नॉन-ब्लॉकिंग निष्पादन संभव हो जाता है। निम्न कोड नमूना दर्शाता है कि इस सुविधा को C# प्रोजेक्ट में कैसे लागू किया जाए:

string pstFilePath = "newMailbox.pst";
var format = FileFormatVersion.Unicode;

// Create a new PST file asynchronously
using (var pst = await PersonalStorage.CreateAsync(pstFilePath, format, CancellationToken.None))
{
     Console.WriteLine($"PST file created at: {pstFilePath}");
}

PST फ़ाइलों को असिंक्रोनस रूप से खोलें

मौजूदा PST फ़ाइल को असिंक्रोनस रूप से खोलने के लिए, उपयोग करें PersonalStorage.FromFileAsync Aspose.Email API की विधि। निम्न कोड नमूना दर्शाता है कि इस सुविधा को C# प्रोजेक्ट में कैसे लागू किया जाए:

string pstFilePath = "newMailbox.pst";
var format = FileFormatVersion.Unicode;

// Open the PST file asynchronously
        using (var pst = await PersonalStorage.FromFileAsync(pstFilePath, CancellationToken.None))
        {
            Console.WriteLine("PST file opened successfully.");

            // Access folders or messages here
            Console.WriteLine($"Root folder name: {pst.RootFolder.DisplayName}");
}

PST फ़ाइलों को असिंक्रोनस रूप से मर्ज करें

यह MergeWithAsync Aspose.Email की विधि PersonalStorage क्लास आपको एक PST फ़ाइल की सामग्री को असिंक्रोनस रूप से दूसरी में मर्ज करने की अनुमति देती है। यह ऐसे परिदृश्यों में उपयोगी है जैसे मेल अभिलेखों को एकीकृत करना, बैकअप को संयोजित करना, या ईमेल डेटा को बड़े पैमाने पर प्रोसेस करना - बिना आपके एप्लिकेशन के मुख्य थ्रेड को ब्लॉक किए। निम्न कोड नमूना दर्शाता है कि इस विधि को अपने C# प्रोजेक्ट में कैसे उपयोग किया जाए:

string targetPstPath = "mainMailbox.pst";
string sourcePstPath = "archiveToMerge.pst";

// Open both PST files asynchronously
using (var targetPst = await PersonalStorage.FromFileAsync(targetPstPath, CancellationToken.None))
using (var sourcePst = await PersonalStorage.FromFileAsync(sourcePstPath, CancellationToken.None))
{
    // Merge the source PST into the target PST
    await targetPst.MergeWithAsync(sourcePst, CancellationToken.None);

    Console.WriteLine("Merge operation completed successfully.");
}

PST फ़ाइलों को असिंक्रोनस रूप से विभाजित करें

निम्न कोड नमूना दर्शाता है कि कैसे असिंक्रोनस रूप से मौजूदा PST फ़ाइल को उपयोग करके खोला जा सकता है FromFileAsync, और फिर इसे कई भागों में विभाजित करने के लिए उपयोग करके SplitIntoAsync. प्रत्येक भाग अधिकतम 50 MB का होगा और निर्दिष्ट आउटपुट डायरेक्टरी में सहेजा जाएगा। असिंक्रोनस निष्पादन सुनिश्चित करता है कि ऑपरेशन मुख्य थ्रेड को ब्लॉक नहीं करता, जिससे यह बड़े PST अभिलेखों को प्रोसेस करने वाले अनुप्रयोगों के लिए उपयुक्त बनता है।

using (var pst = await PersonalStorage.FromFileAsync("input.pst"))
{
    await pst.SplitIntoAsync(50 * 1024 * 1024, "part_", "outputDirectory", CancellationToken.None);
}