Sqlserver
 sql >> Datenbank >  >> RDS >> Sqlserver

Was ist der beste Weg, um ein Bild aus einer SQL Server-Datenbank in asp.net anzuzeigen?

Zwei Optionen:

Erstellen Sie eine temporäre Datei - Das Problem bei diesem Ansatz besteht darin, dass Sie die Datei erstellen müssen, was bedeutet, dass Ihr Web Schreibzugriff auf ein Verzeichnis haben muss, was keine großartige Sache ist. Sie müssen auch eine Möglichkeit haben, die Bilder zu bereinigen.

Über eine andere URL bereitstellen – Dies ist meine bevorzugte Methode, da kein Festplattenzugriff erforderlich ist. Ein einfacher HTTP-Handler (ashx) ist eine großartige Methode, um das Bild bereitzustellen.

Bearbeiten

Wenn Sie den Sitzungsstatus in ashx benötigen, sehen Sie sich Folgendes an:Asp.net System.Web.HttpContext.Current.Session null in global.asax.

Bearbeiten

Paar weitere Gedanken. Es gibt einige Fälle, in denen die Verwendung einer temporären Datei besser sein könnte. Zum Beispiel, wenn Ihre Bilder häufig von vielen Benutzern angefordert werden. Dann wäre es sinnvoll, die Bilder auf der Festplatte zu speichern, da Sie die Datei einmal schreiben könnten, dies erhöht den Wartungsaufwand, aber je nach Datenverkehr könnte es sich lohnen, da Sie dadurch einen Rückruf in den .net-Stack vermeiden und IIS nutzen könnten Caching von statischen Inhalten.