में डेटाबेस से छवि प्रदर्शित करें मुझे नियंत्रक से बाइट सरणी प्रारूप में एक छवि मिल रही है, मैं इसे दृश्य में कैसे प्रदर्शित कर सकता हूं? सबसे सरल तरीके से।एएसपी एमवीसी
उत्तर
छवियों को प्रदर्शित करने के लिए छवियों की आईडी लेता है जो एक शो क्रिया के साथ छवियों को प्रदर्शित करने के लिए एक नियंत्रक बनाएँ। कार्रवाई को एक फ़ाइलResult वापस करना चाहिए जिसमें उपयुक्त सामग्री प्रकार के साथ छवि डेटा शामिल है।
public class ImageController : Controller
{
public ActionResult Show(int id)
{
var imageData = ...get bytes from database...
return File(imageData, "image/jpg");
}
}
आपके विचार में, छवि का निर्माण और नियंत्रक और कार्रवाई का उपयोग कर छवि के लिए एक रास्ता के निर्माण के लिए छवि आईडी का उपयोग करें।
<img src='<%= Url.Action("show", "image", new { id = ViewData["imageID"] }) %>' />
मान लें कि आप एक DataRow दो कॉलम, "नाम" और "binary_image" के साथ (डॉ) है
Byte[] bytes = (Byte[])dr["Data"];
Response.Buffer = true;
Response.Charset = "";
Response.Cache.SetCacheability(HttpCacheability.NoCache);
Response.ContentType = dr["Image/JPEG"].ToString();
Response.AddHeader("content-disposition", "attachment;filename=" & dt.Rows[0]["Name"].ToString());
Response.BinaryWrite(bytes);
Response.Flush();
Response.End();
मैं जानता हूँ कि इस पोस्ट के बजाय पुरानी है (binary_image द्विआधारी जानकारी शामिल है), लेकिन यह था पहला यह है कि आया था जब मैं कैसे सबसे अधिक भाग AUGI उत्तर के लिए यह करने के लिए यह पता लगाने की कोशिश कर रहा था में से एक सही था लेकिन विधानसभाओं के सबसे बाहर दिनांकित हैं
मैं डाउनलोड mvc2 पूर्वावलोकन 1
microsoft.web.mvc सामान मैं सके के बारे में एक घंटे के लिए खोज क्या यह
इस रूप में विकसित हो पता लगाने की कोशिश भी है कि सामान के किसी भी खोजने के लिए और के बारे में चिंता करने की कोई जरूरत कोड है मैं ने लिखा है कि मेरी नियंत्रक वर्ग जो मैं दुकान कहा जाता है में टाइप छवि
का एक डाटाबेस क्षेत्र से एक छवि प्रदर्शित करने के लिए मेरे लिए काम करता मैं मैं करने की कोशिश की मेरे विचार पृष्ठ के लिए अब इस
public ActionResult GetImage(int id)
{
byte[] imageData = storeRepository.ReturnImage(id);
//instead of what augi wrote using the binarystreamresult this was the closest thing i found so i am assuming that this is what it evolved into
return new FileStreamResult(new System.IO.MemoryStream(imageData), "image/jpeg");
}
//in my repository class where i have all the methods for accessing data i have this
public byte[] ReturnImage(int id)
{
// i tried his way of selecting the right record and preforming the toArray method in the return statment
// but it kept giving me an error about converting linq.binary to byte[] tried a cast that didnt work so i came up with this
byte[] imageData = GetProduct(id).ProductImage.ToArray();
return imageData;
}
है तरीकों में से अल प्रकार मैं इन रूपों में पाया जाता है और कुछ भी नहीं काम किया मैं यह सोचते हैं रहा हूँ वे सिर्फ पुराना थे तो मैं सब बात मैं के बारे में सोच सकता है का सरलतम एक लहर की कोशिश की और यह पूरी तरह
<image src='/store/getimage/<%= Html.Encode(Model.productID) %>' alt="" />
मैं एक त्रुटि हो रही है काम img टैग पोस्ट करने के बारे साइट से तो आप img को
आशा एक मौजूदा जवाब
http://aspnet.codeplex.com/Release/ProjectReleases.aspx?ReleaseId=30886
इस का उपयोग कर के स्वीकार किए जाते हैं जवाब:
<img src='<%= Url.Action("show", "image", new { id = ViewData["imageID"] }) %>'
ठीक है, लेकिन पुरानी MVC 4 के लिए अद्यतन वाक्य रचना अब पढ़ना चाहिए है:
<img src='@Url.Action("show", "image", new { id = ViewData["imageID"] })' />
इसके अलावा, मुझे लगता है कि जब मैं इस कार्यक्षमता की जरूरत है कि मैं पहले से ही दृश्य में अन्य डेटा पास कर रहा हूं इसलिए व्यूडेटा के बजाय मॉडल का उपयोग करना अच्छा है।
public ActionResult Index() {
MyEntity entity = fetchEntity();
MyModel model = new MyModel {
SomeData = entity.Data,
FileId = entity.SomeFile.ID
};
return View(model);
}
अंत में आपके विचार से
:
<img src='@Url.Action("show", "image", new { id = Model.FileId })' />
"दिखाएँ" स्वीकार किए जाते हैं जवाब के लिए नियंत्रक पर विधि काम करेगी, लेकिन मैं हार्डकोडेड बदल जाएगा
public class MyModel {
public string SomeData {get;set;}
public int FileId {get; set;}
}
अपने नियंत्रक से
File.ContentType का उपयोग करने के लिए "छवि/jpg" - आप इसे बाइट [] के साथ स्टोर कर सकते हैं, इसलिए यदि उपयोगकर्ता अपनी छवियों को अपलोड कर रहे हैं तो आपको अनुमान लगाने की आवश्यकता नहीं है।
- 1. एएसपी एमवीसी
- 2. एएसपी एमवीसी
- 3. एएसपी एमवीसी
- 4. एएसपी एमवीसी
- 5. ड्रॉपडाउन सूची एएसपी एमवीसी
- 6. एएसपी एमवीसी 3 एक्शनलिंक
- 7. एएसपी एमवीसी 4 (बीटा)
- 8. एएसपी .NET एमवीसी स्टोर्स
- 9. एएसपी एमवीसी 4
- 10. एएसपी एमवीसी ऐप
- 11. एएसपी .NET एमवीसी 2
- 12. एएसपी एमवीसी चाइल्डएक्शन केवल रूटिंग
- 13. एएसपी एमवीसी रेजर जावास्क्रिप्ट ब्लॉक
- 14. एएसपी एमवीसी एरिया और एक्शनलिंक
- 15. एएसपी एमवीसी एचटीएमएल हेल्पर्स - अच्छा या बुरा?
- 16. एएसपी .NET एमवीसी फॉर्म सक्रिय निर्देशिका समूहों
- 17. एएसपी .NET एमवीसी प्रति-फील्ड स्तर
- 18. एएसपी एमवीसी 3 RequHttps विशेषता https
- 19. पारंपरिक एएसपी .NET वेब फॉर्म बनाम एमवीसी
- 20. एएसपी .NET एमवीसी सही उपयोगकर्ता नियंत्रण वास्तुकला
- 21. एएसपी.नेट एमवीसी (सी #) में क्लासिक एएसपी
- 22. क्लासिक एएसपी माइग्रेटिंग - वेबफॉर्म या एएसपी.नेट एमवीसी?
- 23. एएसपी एमवीसी फ़ाइल अपलोड HttpPostedFileBase शून्य
- 24. एएसपी .NET एमवीसी रीडायरेक्ट टोपेशन पूर्ण यूआरएल
- 25. एएसपी .NET एमवीसी 3: कस्टम अविभाज्य सत्यापन
- 26. विजुअल स्टूडियो एएसपी .NET एमवीसी इंटेलिसेंस
- 27. एक वेबपैप में एएसपी एमवीसी अजाक्स फॉर्म
- 28. एएसपी एमवीसी एक्शन लिंक पूर्ण यूआरएल
- 29. ओपन/सेव डायलॉग एएसपी नेट एमवीसी 4
- 30. एएसपी .NET एमवीसी 3 - एचटीएमएल फॉर्म
यह विधि मेरे लिए बहुत अच्छा काम करती है। –
और मैं। अच्छी चीज़। – Dave
मुझे 3. बढ़िया। धन्यवाद! – Laguna