Display byte come le immagini su un .pagina aspx

Sto usando un database per memorizzare i clienti di immagini come byte. Come posso rendere queste immagini su un .pagina aspx?

InformationsquelleAutor BreakHead | 2010-08-07

 

3 Replies
  1. 27

    Due soluzioni.

    1. Costruire un gestore di pagina. Che prende un ImageID/RowID come parametro e restituisce i dati con il tipo mime image/jpeg o image/png.

    2. Utilizzare i DATI schema uri come spiegato sul wikipedia.

      <img src=”data:image/png;base64,
      iVBORw0KGgoAAAANSUhEUgAAAAoAAAAKcayaaacnms+9AAAABGdBTUEAALGP
      C/xhBQAAAAlwSFlzAAALEwAACxMBAJqcGAaaaad0su1fb9ygarc5kb0xv+IA
      AAAddEVYdENvbW1lbnQAQ3JlYXRlZCB3axroifrozsbhsu1q72qlbgaaaf1j
      REFUGNO9zL0NglAAxPEfdLTs4BZM4DIO4c7owqg2joq9le1exdlyvbbez7jq
      ch9//q1uH4TLzw4d6+ErXMMcXuHWxId3KOETnnXXV6MJpcq2MLai97cer3n0
      vr4MkhoXe0rZigAAAABJRU5ErkJggg==” alt=”Red dot” />

    • Bello.. non avevo mai sentito dei DATI uri modalità. +1 per te. Ecco perché amo questo sito.. ogni giorno Qualcosa di nuovo…
    • anche io sapevo molto tardi nella mia carriera. ho avuto fede solo i percorsi dei file sono ammessi lì.
    • idem @Davide. Mai sentito parlare; di risolvere un grande problema per me: il pre-download di immagini png. Le classi CSS che incorporano codificato in base 64 immagini (penso!) essere molto più veloce, più affidabile e ripetibile di altri ben noti, ma imo un po ‘ brutti, hackish pre-download di programmi.
    • ooh ya. questo è brutto come queste immagini non vengono memorizzate e viaggiare con il contenuto della pagina. Non va bene per immagini più grandi. E non usare il secondo metodo per il bene di PRE-CARICAMENTO delle immagini.
    • grazie per la risposta..è che dobbiamo utilizzare i dati:image/png;base64, per ogni immagine, array di byte?
    • qui è quello che sto cercando di Sistema.Di testo.UTF8Encoding enc = nuovo Sistema.Di testo.UTF8Encoding(); investorLogo.Src = stringa.Formato”data:image/png;base64,{0}”, enc.GetString(investitore.Il Logo)); ma la sua resa di tutti i byte
    • Ehi il suo lavoro…..

  2. 2

    Questo può essere fatto facilmente da convertire l’Array di Byte per un Base64 immagine.

    public string GetImageAsBase64String(byte[] bin)
    {
        if (bin != null)
        {
            return "<img src=\"data:image/jpeg;base64," + Convert.ToBase64String(bin) + "\">";
        }
        else
        {
           return null;
        }
    }
    
    //usage, for demo purposes an uploaded image from a FileUpload Control
    Label1.Text = GetImageAsBase64String(FileUpload1.FileBytes);

Lascia un commento