2017-02-07 2 views
0

Ich habe es geschafft, das binäre Bild von der Datenbank zur Bildkontrolle mit einem generischen Handler anzuzeigen. Ich möchte das Bild auf einem neuen Tab öffnen oder die Linkadresse kopieren, indem ich mit der rechten Maustaste klicke. Die verwendete URL ist jedoch die Adresse des generischen Handlers (http://localhost:1948/admin/imghndlr.ashx?serial=qwertyuiop). Ich habe versucht zu suchen, aber habe keine Ergebnisse erhalten, vielleicht falsche Schlüsselwörter verwendet. Unten ist der Screenshot des Bildes im neuen Tab. Right Click>Open image on new tabWie Bild in neuer Registerkarte von generischen Handler zu öffnen?

+0

Haben Sie die Binärdaten zurück in das Bild konvertiert, bevor Sie das Steuerelement einstellen? –

+3

, die aussieht wie ein PNG (siehe die ersten Buchstaben), aber mit den falschen Content/Mime Type Header gesendet werden, siehe hier http://StackOverflow.com/A/1031144/74585 –

Antwort

0

Wie wird das Bild angezeigt?

Ihre View-Datei sollte in etwa so aussehen, natürlich müssen Sie Daten ändern: image/jpeg auf welcher Dateiendung Sie verwenden.

<img alt="" src="data:image/jpeg;base64,iVBORw0KGgoAAAANSUhEUgAAAsMAAAGhCAIAAAALOi7ZAAAACXBIWXMAAAsTAAALEwEAmpwYAAAAB3RJTUUH3QgLEhM6PUSGrwAAIABJREFUeNq8vcuSLEmWHKZ6jnlEZt5761Z3T/eAHAICAYRcEALsuOCWPzbzDfwP/gKXWJACoRDCBSkEBgPhADKY7qnu+4wIdztHuThmHh55q2t6ho+SlpaqyMwID3ez89CjqsY//dM//bM/+zMc/pGE3//PT/z09/1I0t/1Rz/x+o9+0I++vv/n8fU/8MW/9U9+9JVvL/v/u1cy86cv5ttfePXKq//8fTfhp+/qT3/oq8v+6V/+Ay/v25/+4X/46nqO"/> 

Auch wenn es eine Byte-Datei ist, vergessen Sie nicht, es zu konvertieren.

Convert.ToBase64String(Foto); 
0

Sie benötigen Daten hinzufügen mime-type zu Browser machen wissen, welche Art macht Sie responsed Daten vorhanden sind. Code wie folgt eingefügt:

public void ProcessRequest(HttpContext context) 
{ 
    //image/png is png mime 
    context.Response.ContentType = "image/png"; 
    //read buffer from database 
    context.Response.BinaryWrite(buffer); 
} 
Verwandte Themen