Immagine in grid view

giovedì 17 giugno 2010 - 15.54

muccio04 Profilo | Newbie

ciao tutti, come da oggetto vorrei inserire una immagine in una grid view, sotto riporto il codice, potete dirmi dove sbaglio?
questa è la grid view che risiede in una sotto directory della rooot chiamata "admin" , e le immagini sono nella cartella public\img_Art_In_Evidenza del sito i campi del database sono "ID,marcaModello,descrizione,descrizioneBreve,immagine" e la tabella si chiama "inEvidenza"

<asp:GridView AutoGenerateEditButton="True" AutoGenerateDeleteButton="True" DataKeyNames="ID" runat="server" ID="GrdVw_Mod_ArtEvidenza" DataSourceID="accDsrcArtEvidenza" AutoGenerateColumns="False">
<Columns>
<asp:BoundField DataField="ID" HeaderText="ID" InsertVisible="False" ReadOnly="True" SortExpression="ID" />
<asp:BoundField DataField="marcaModello" HeaderText="marcaModello" SortExpression="marcaModello" />
<asp:BoundField DataField="descrizione" HeaderText="descrizione" SortExpression="descrizione" />
<asp:BoundField DataField="descrizioneBreve" HeaderText="descrizioneBreve" SortExpression="descrizioneBreve" />
<asp:ImageField DataImageUrlField="immagine" HeaderText="immagine" DataImageUrlFormatString="..\pubblic\img_Art_In_Evidenza\{0}"></asp:ImageField>
</Columns>
</asp:GridView>

<asp:AccessDataSource ID="accDsrcArtEvidenza" runat="server" DataFile="~/mdb-database/inEvidenza.mdb"
SelectCommand="SELECT ID,marcaModello,descrizione,descrizioneBreve,immagine FROM inEvidenza"
UpdateCommand="UPDATE inEvidenza SET marcaModello=@marcaModello , descrizione=@descrizione,
descrizioneBreve=@descrizioneBreve, immagine=@immagine WHERE ID=@ID"
DeleteCommand="DELETE * FROM inEvidenza WHERE ID=@ID">
</asp:AccessDataSource>

freeteo Profilo | Guru

Ciao,
secondo me è sbagliato il path dell'immagine, ossia quando specifichi DataImageUrlFormatString devi dare un path relativo all'applicazione, ed iusare le barre "/" e non quelle del disco.
Questo perchè il render HTML della colonna di fatto è un tag "img" dove viene impostato l'attributo "src" e li ci vuole un path virtuale, e non fisico, quindi io imposterei:
.. DataImageUrlFormatString="~/pathImmagini/{0}" ..

Puoi cmq verificare vedendo il sorgente della pagina che hai a runtime...

Ciao.

Matteo Raumer
[MCAD .net, MVP Visual C#]
http://blogs.dotnethell.it/freeteo
Partecipa anche tu! Registrati!
Hai bisogno di aiuto ?
Perchè non ti registri subito?

Dopo esserti registrato potrai chiedere
aiuto sul nostro Forum oppure aiutare gli altri

Consulta le Stanze disponibili.

Registrati ora !
Copyright © dotNetHell.it 2002-2024
Running on Windows Server 2008 R2 Standard, SQL Server 2012 & ASP.NET 3.5