2015-04-01 11 views
5

क्या वहां कहीं भी कक्षा है जो एज़ुर ब्लॉकब्लोब क्रियाओं पर लेन-देन के साथ वापस रोल करने की अनुमति देती है?सी # एज़ूर स्टोरेज ब्लॉब अपलोड ट्रांज़ेक्शनस्कोप

मैं बनाने चाहते हैं यह काम करता है:

CloudBlockBlob blockBlob; 

    private void UploadPicture(Stream iStream) 
    { 
     using(var ts = new TransactionScope()) 
     { 
      blockBlob.UploadFromStream(iStream); 

      throw new Exception(); 
      ts.Complete(); 
     } 
    } 

जब अपवाद बढ़ा है, अपलोड की गई फ़ाइल को रद्द नहीं किया गया है। यदि लेनदेन के दायरे के साथ संभव नहीं है, तो मुझे कैसे आगे बढ़ना चाहिए?

+0

आप यहां क्या हासिल करने की कोशिश कर रहे हैं? क्या अपलोड परमाणु बनाने का उद्देश्य है ताकि पूरा अपलोड सफल हो या कुछ भी न हो? आपका ब्लॉब कितना बड़ा है? –

+0

@ AtulSikaria-MSFT हाँ मैं अपने डेटाबेस में अपने मेटाडेटा के साथ परमाणु अपलोड करने की कोशिश कर रहा हूं। अगर कुछ गलत हो जाता है तो मैं रोलबैक कर सकता हूं। ब्लॉब का अधिकतम आकार 5 मो – Julian50

+0

है, उस स्थिति में आपको अपने अपडेट के चारों ओर एक लेनदेन की आवश्यकता नहीं होनी चाहिए। ब्लब्स के लिए अद्यतन परमाणु हैं। भले ही ब्लॉब्स भाग में अपलोड हो जाएं, यह अंतिम PutBlockList अनुरोध है जो ब्लॉब करता है, जो परमाणु होना चाहिए। –

उत्तर

1

Azure संग्रहण क्लाइंट लाइब्रेरी इस समर्थन को प्रदान नहीं करती है। यदि, हालांकि, आपके परिदृश्य के लिए रद्दीकरण समर्थन स्वीकार्य है, तो आप UploadFromStreamAsync API का उपयोग CancellationToken के साथ कर सकते हैं। हालांकि यह अजीब रूप से ब्लॉब अपलोड कर रहा है, आप ऑपरेशन को रद्द कर सकते हैं। ऑपरेशन की वर्तमान प्रगति के आधार पर, यह अपलोड को रद्द करने का प्रयास करेगा।

+0

धन्यवाद, लेकिन मैं चाहता हूं कि मैं वास्तव में लेनदेन स्कोप रोल इकाई के रूप में वापस उदाहरण के लिए – Julian50

+0

दुर्भाग्यवश, Azure संग्रहण इस कार्यक्षमता प्रदान नहीं करता है। तो, आपको इसे स्वयं बनाना होगा। –

+0

मुझे लगता है, मैं पहले व्यक्ति नहीं हूं जो इस सुविधा को करना चाहते हैं। आपको चित्रों, दस्तावेजों आदि के लिए इसकी आवश्यकता है। तो क्या वहां कोई कक्षा पहले से ही लिखी गई है? मुझे कुछ नहीं मिला। क्या आपके पास कृपया मेरी मदद करने के लिए एक लिंक है? – Julian50

संबंधित मुद्दे