मैं एक साधारण बात करने के लिए कोशिश कर रहा हूँ से एक छवि डाउनलोड लेकिन मैं नहीं कर सकता ...Synchronously यूआरएल
मैं सिर्फ एक इंटरनेट URL से एक BitmapImage प्राप्त करना चाहते हैं, लेकिन मेरे समारोह काम करने के लिए प्रतीत नहीं होता ठीक है, यह केवल मुझे छवि का एक छोटा सा हिस्सा लौटाता है। मुझे पता है कि WebResponse async काम कर रहा है और यह निश्चित रूप से मुझे यह समस्या क्यों है, लेकिन मैं इसे सिंक्रनाइज़ तरीके से कैसे कर सकता हूं?
internal static BitmapImage GetImageFromUrl(string url)
{
Uri urlUri = new Uri(url);
WebRequest webRequest = WebRequest.CreateDefault(urlUri);
webRequest.ContentType = "image/jpeg";
WebResponse webResponse = webRequest.GetResponse();
BitmapImage image = new BitmapImage();
image.BeginInit();
image.StreamSource = webResponse.GetResponseStream();
image.EndInit();
return image;
}
आपकी मदद के लिए एक बहुत धन्यवाद:
यहाँ मेरी कार्य है।
मुझे इसके साथ बहुत भाग्य नहीं है, मेरी छवि अभी भी आंशिक रूप से मेमोरीस्ट्रीम पर डाउनलोड की गई है, शायद आप मुझे नमूना कोड प्रदान कर सकते हैं? – Karnalta
प्रतिक्रिया स्ट्रीम से पढ़ने पर, यह बफर को भर नहीं पाएगा, जैसा स्थानीय फ़ाइल से पढ़ते समय होगा। तो बफर के आकार की तुलना में पढ़ने वाले बाइट्स की मात्रा कम होगी। हालांकि यह 0 से अधिक होगा, जो इंगित करता है कि फ़ाइल का अंत अभी तक नहीं पहुंचा है। मुझे लगता है कि यह यूआरएल से पूरी तरह से छवि पढ़ने की विफलता की कुंजी है। – treaschf
तस्वीर को डाउनलोड करने के लिए यह नमूना काम ठीक है, अब मुझे उस फ़ाइल को बिटमैप इमेज में कनवर्ट करने में सक्षम होना चाहिए। – Karnalta