2016-07-26 14 views
0

Ich habe eine Sammlung Bildpfade in der Sql Datenbank gespeichert und auf einer asp.net Seite angezeigt. Und ich habe den folgenden Code verwendet, um den Pfad eines Bildes zu erhalten, auf das der Benutzer klickt. Mein Problem Rückweg des ersten Bildes mit einem Klick. Wie kann ich es lösen?Wie bekomme ich den Image-Pfad mit OnClick in asp.net?

Default.aspx

<asp:ImageButton ID="ImageButton1" runat="server" Height="200" Width="125" ImageUrl='<%#Eval ("img") %>' OnClick="ImageButton1_Click" /> 

Default.cs

   if (dt.Rows.Count > 0) 
      { 
       ViewState["img"] = dt.Rows[0]["img"].ToString(); 
      } 
+0

Möchten Sie Bildpfad oder das erste Bild? – user3151766

+0

Ich möchte Bildpfad für jedes Bild, dass der Benutzer darauf klicken. ex: während der Benutzer auf das erste Bild klicken Ich brauche Pfad des ersten Bildes. Während der Benutzer auf das 10. Bild klickt, brauche ich den Pfad des 10. Bildes. – Sawa

Antwort

0

sollten Sie filtern verwandte Reihe zu bekommen. Sie können Linq für Object verwenden und mit where filtern und Ihr Feld auswählen.

Beispiel- (suppose Filter durch Spalte id):

dt.AsEnumerable().Where(r=>r.Field<int>("id")==4).Select(r => r.Field<string>("img")); 
+0

Aber, '(r => r.Field (" id ") == 4)' Änderung durch Benutzerspannung – Sawa

+0

Das ist ein Beispiel, Was ist der Schlüssel der Datentabelle? –

+0

OK. Ich wusste. Aber "4" ist dynamisch und ändert sich durch die Absicht des Benutzers – Sawa

0

wie pro Ihre Details sieht aus wie Sie nur den Wert von

dt.Rows [0] [ „img“] erhalten. ToString() wird nur zurückgeben ersten Pfad des Bildes immer Sie brauchen For-Schleife für exakte Lösung zu verwenden.

+0

Aber Schleife reicht nicht aus, um genaue Lösung zu finden. Außerdem muss ich den Pfad des Bildes abrufen, das vom Benutzer ausgewählt wurde. – Sawa

+0

ViewState ["file1"] = Server.MapPath ("~/Ordnername /" + ImagebuttonID.FileName); benutze das – user2732906

Verwandte Themen