आपको बता दें कि हम एक नए ActionResult ASP.NET MVC के RC1 संस्करण में FileResult कहा जाता है मिल गया है।कैसे ASP.NET MVC RC1 में FileResult साथ 304 स्थिति लौटाने
इसका उपयोग करके, आपकी क्रिया विधियां गतिशील रूप से ब्राउज़र पर छवि वापस कर सकती हैं। कुछ इस तरह:
public ActionResult DisplayPhoto(int id)
{
Photo photo = GetPhotoFromDatabase(id);
return File(photo.Content, photo.ContentType);
}
एचटीएमएल कोड में, हम कुछ इस तरह उपयोग कर सकते हैं:
<img src="http://mysite.com/controller/DisplayPhoto/657">
चूंकि छवि गतिशील रूप से दिया जाता है, हम वापस आ धारा कैश करने के लिए कोई तरीका होना चाहिए ताकि हम डॉन डेटाबेस से फिर से छवि को पढ़ने की जरूरत नहीं है। मुझे लगता है कि हम कुछ इस तरह से यह कर सकते हैं, मुझे यकीन है कि नहीं कर रहा हूँ:
Response.StatusCode = 304;
यह ब्राउज़र आप पहले से ही अपने कैश में छवि है कि बताता है। मुझे नहीं पता कि स्टेटसकोड को 304 पर सेट करने के बाद मेरी एक्शन विधि में क्या लौटना है। क्या मुझे शून्य या कुछ वापस करना चाहिए?
पहले अनुरोध में, मैं इस तरह ETag गुण सेट: HttpContext.Current.Response.Cache.SetETag (someUniqueValue); बाद के अनुरोधों में, ईटीएजी पढ़कर मुझे पता है कि छवि ब्राउज़र के कैश में है और इसलिए मुझे 304 – Meysam
वापस लौटना होगा, 304 लौटने पर फ़ाइल रीसेट का उपयोग करें। –