आपको System.Drawing.Image
तब तक वापस नहीं लौटना चाहिए , जब तक कि आप एक फॉर्मेटर भी नहीं जोड़ते हैं जो जानता है कि कैसे उचित बाइट्स में परिवर्तित करना है, जैसा कि आप उम्मीद करते हैं कि छवि बाइट्स के रूप में खुद को क्रमबद्ध नहीं करती है।
एक संभव उपाय यह है HttpResponseMessage
कि इसकी सामग्री में संग्रहीत छवि के साथ वापस लौटा जाए (जैसा कि नीचे दिखाया गया है)। याद रखें कि यदि आप प्रश्न में दिखाया गया URL चाहते हैं, तो आपको एक मार्ग की आवश्यकता होगी जो {imageName}, {width} और {height} मापदंडों को मैप करता हो।
public HttpResponseMessage Get(string imageName, int width, int height)
{
Image img = GetImage(imageName, width, height);
using(MemoryStream ms = new MemoryStream())
{
img.Save(ms, System.Drawing.Imaging.ImageFormat.Png);
HttpResponseMessage result = new HttpResponseMessage(HttpStatusCode.OK);
result.Content = new ByteArrayContent(ms.ToArray());
result.Content.Headers.ContentType = new MediaTypeHeaderValue("image/png");
return result;
}
}
लेकिन फिर से, यदि आप कई स्थानों पर ऐसा कर रहे हैं, तो फ़ॉर्मेटर मार्ग पर जाना "अनुशंसित" तरीका हो सकता है। प्रोग्रामिंग में लगभग सब कुछ के रूप में, उत्तर आपके परिदृश्य पर निर्भर करेगा।