2010-12-09 10 views

Antwort

1

Sie können sie als binäre Daten speichern. Sie können ein Modul schreiben (abgeleitet von IHttpModule) und es für das RequestBegin-Ereignis registrieren. Wenn eine Anfrage kommt, können Sie Daten aus der Datenbank abrufen, sie auf dem Datenträger mit dem angeforderten Dateinamen speichern und Dieses Bild wird automatisch vom integrierten IIS-Handler zurückgegeben (der in nativem Code geschrieben ist und sehr schnell funktioniert).

+2

könnten Sie mir ein Beispiel geben? –

+0

@Chandan Ich bin mir ziemlich sicher, dass du es mit den Schritten, die Tony zur Verfügung gestellt hat, herausfinden kannst. Wenn Sie das nicht können, dann glaube ich nicht, dass Sie wirklich genug über Asp.Net wissen, um viel aus einem Beispiel zu machen. –

+0

Ich brauche Hilfe wirklich dieses Problem zu lösen –

1

Here ist ein Projekt, das genau das tut. Alles, was Sie tun müssen, ist die Speicher- und Abruflogik in Ihre ASP.Net-Anwendung zu verschieben.

+0

Es gibt keine Funktion wie FromStream in Image-Klasse ist mit (Memorystream ms = new Memorystream (imagedata, 0, imageData.Length)) { ms.Write (imagedata, 0, imagedata .Länge); // Setzen Sie den Bildvariablenwert über den Speicherstream. newImage = Bild.FromStream (ms, wahr); } –

+0

System.Drawing.Image hat definitiv die FromStream-Methode. http://msdn.microsoft.com/en-us/library/system.drawing.image.fromstream.aspx –

+0

Mein Freund, worüber Sie sprechen, ist in Windows-Anwendung und nicht in Web-Anwendungen –

0

Es wird nicht empfohlen.

Best Practice ist das Speichern von Meta-Daten (hier Meta-Daten ist der Name der Bilddatei) innerhalb der Datenbank und sotiere sie auf Dateisystem (zum Beispiel c: \ images). Wenn Sie dann ein Bild benötigen, können Sie die Datenbank nach ihrem Namen fragen und sie aus dem Dateisystem abrufen.

Dies hilft Ihnen, eine kompakte Datenbank zu haben und die Wartung wurde einfach. Die Handhabung großer Datenbanken ist ein Problem.

Verwandte Themen