Servus,
folgendes:
ich übergebe in einem BoundField eines Gridviews mittels Javascript einen String an eine neue Seite (Querystring):
<asp:BoundField DataFormatString="<a href=javascript:window.open('./player.aspx?filename={0}',null,'width=400,height=400,location=no');>play</a>" HtmlEncode="false" DataField="Filename" HeaderText="PLAN_IMG"/>
dieser String ist allerdings ein Pfad mit ziemlich vielen Backslashes 🙁
mit
string pfad = Request.QueryString["filename"];
bekomm ich allerdings einen String bei dem die Backslashes in andere Zeichen umgewandelt worden sind.
Wie kann ich nun vorgehen, damit ich einen korrekten Pfad an der Zielseite erhalte?
ist das Rowdatabound event eine Möglichkeit? Wenn ja, wie wende ich es an??..
i kenn mi hoid ned aus
Hallo fatalerror (Hoffentlich ist der Name nicht Programm 😉
Verwende HttpServerUtility.UrlDe- und Encode, siehe:
RowDataBound ist eine Möglichkeit, siehe:
Gruss Peter
--
Microsoft MVP - Visual Developer ASP / ASP.NET, Switzerland 2007 - 2011
danke für die schnelle antwort,
aber wie kann ich die methode urlencode anwenden?
<asp:BoundField DataFormatString="<a href=java script:window.open('./player.aspx?filename=' + Server.UrlEncode "({0})",null,'width=400,height=400,location=no');>play</a>" HtmlEncode="false" DataField="Filename" HeaderText="PLAN_IMG"/>
wird nicht funktionieren ...
i kenn mi hoid ned aus
danke für die schnelle antwort,
aber wie kann ich die methode urlencode anwenden?
<asp:BoundField DataFormatString="<a href=java script:window.open('./player.aspx?filename=' + Server.UrlEncode "({0})",null,'width=400,height=400,location=no');>play</a>" HtmlEncode="false" DataField="Filename" HeaderText="PLAN_IMG"/>
wird nicht funktionieren ...
Hast du es schonmal so probiert?
<asp:BoundField DataFormatString="<a href=java script:window.open('./player.aspx?filename=' + <% Server.UrlEncode({0}) %> +',null,'width=400,height=400,location=no');>play</a>" HtmlEncode="false" DataField="Filename" HeaderText="PLAN_IMG"/>
shit... wollte editieren...
hm, funktioniert leider auch nicht 🙁
der Querystring ist mit dieser Variante nur noch
player.aspx?filename=
scheint so als gäbe es Probleme mit der Verkettung ..
i kenn mi hoid ned aus
Hallo zusammen
Mit einer Hilfsmethode, Vorgehen ist hier beschrieben:
Oder ansonsten einfach mit RowDataBound.
Mehr als das Geschriebene kann ich nicht anbieten, das sollte bei weitem reichen.
Gruss Peter
--
Microsoft MVP - Visual Developer ASP / ASP.NET, Switzerland 2007 - 2011
dankeschön, habe es mit dem Rowdatabound Event realisiert und es ging einfacher als ich dachte.
Wusste nicht dass für das dataformatstring feld auch die variable "Text" hergenommen werden kann...
thx
i kenn mi hoid ned aus