2011-05-25 9 views
5

मैं AWS .NET SDK के साथ एक बाल्टी में फ़ाइलों या निर्देशिका अपलोड करने में सक्षम हूं, लेकिन वे हमेशा रूट फ़ोल्डर में समाप्त होते हैं।मैं एक बाल्टी के भीतर किसी फ़ोल्डर में फ़ाइल/निर्देशिका कैसे अपलोड करूं?

क्या कोई मौजूदा निर्देशिका में फाइल अपलोड करने का कोई तरीका है?

  • संपादित करें। अधिक जानकारी:

तो मैं अपनी स्थानीय डिस्क से S3 पर निर्देशिका अपलोड करने के लिए एक स्थानांतरणउत्पादनउप्लोड डायरेक्टरी रिक्वेस्ट का उपयोग कर रहा हूं। मैं चाहता हूं कि फ़ाइलों को बाल्टी में एक फ़ोल्डर में अपलोड किया जाए जैसा कि मैंने चुना है।

उदाहरण के लिए। यदि मैं निर्देशिका सी:/सामान अपलोड करने के लिए चुनता हूं, तो मैं सी:/सामान की सामग्री को बकेटनेट/सामान में जाना चाहता हूं, सीधे बाल्टी में नहीं।

मुझे आशा है कि यह स्पष्ट है नहीं तो मैं और अधिक जानकारी

उत्तर

4

नेट के लिए एडब्ल्यूएस एसडीके के नवीनतम संस्करण आप UploadDirectoryRequest पर KeyPrefix गुण सेट करने की अनुमति देता है (अधिक जानकारी here)।

+0

बिल्कुल सही! मेरे पास संस्करण में वह विकल्प नहीं था। –

4

यह आसपास googling के बाद लगता है, आप एक कुंजी निर्दिष्ट प्रदान करने के लिए कोशिश करता हूँ कि मैं क्या करने की कोशिश कर रहा हूँ,। यह मुझे कुछ समय लिया, लेकिन मेरा मानना ​​है कि कुंजी इस उदाहरण की तरह कुछ है:

string key = string.Format("{0}/{1}", folder, filename); 
PutObjectRequest rq = new PutObjectRequest() 
{ 
    AutoCloseStream = false, 
    BucketName = s3BucketName, 
    InputStream = stream, 
    Key = key 
}; 

S3ClientInstance.PutObject(rq).Dispose(); 
+0

हमम, मैं ऐसी किसी चीज़ की उम्मीद कर रहा था जो निर्देशिका के लिए काम करेगी, न कि व्यक्तिगत फ़ाइल द्वारा। TransferUtilityUploadRequest की एक कुंजी भी है, लेकिन निर्देशिका अपलोड के लिए एक सामान्य कुंजी सेट करने का कोई तरीका प्रतीत नहीं होता है। आपके इनपुट के लिए धन्यवाद। –

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

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