Sur un contrôle serveur asp:image, je souhaiterais affecter la chaîne
"mapage.aspx?p1=0&p2=1".
Dans le code behind, j'utilise donc la propriété "imageurl" du contrôle.
Mais le résultat de l'affectation, dans la page html générée est :
<img src="mapage.aspx?p1=0&p2=1">
Le "&" est converti en son équivalent html... ce qui n'est pas souhaitable
dans ce cas.
Quelqu'un sait-il comment procéder à une affectation directe, sans
conversion ?
Cette action est irreversible, confirmez la suppression du commentaire ?
Signaler le commentaire
Veuillez sélectionner un problème
Nudité
Violence
Harcèlement
Fraude
Vente illégale
Discours haineux
Terrorisme
Autre
Damien RICHARD
Regardes du coté de HTMLEncode
"Pierre" a écrit dans le message de news:
Bonjour,
Sur un contrôle serveur asp:image, je souhaiterais affecter la chaîne "mapage.aspx?p1=0&p2=1". Dans le code behind, j'utilise donc la propriété "imageurl" du contrôle. Mais le résultat de l'affectation, dans la page html générée est : <img src="mapage.aspx?p1=0&p2=1">
Le "&" est converti en son équivalent html... ce qui n'est pas souhaitable dans ce cas.
Quelqu'un sait-il comment procéder à une affectation directe, sans conversion ?
Merci d'avance.
Pierre.
Regardes du coté de HTMLEncode
"Pierre" <pierroozz@freesurf.fr> a écrit dans le message de news:
OTNKXhBvEHA.2116@TK2MSFTNGP14.phx.gbl...
Bonjour,
Sur un contrôle serveur asp:image, je souhaiterais affecter la chaîne
"mapage.aspx?p1=0&p2=1".
Dans le code behind, j'utilise donc la propriété "imageurl" du contrôle.
Mais le résultat de l'affectation, dans la page html générée est :
<img src="mapage.aspx?p1=0&p2=1">
Le "&" est converti en son équivalent html... ce qui n'est pas souhaitable
dans ce cas.
Quelqu'un sait-il comment procéder à une affectation directe, sans
conversion ?
Sur un contrôle serveur asp:image, je souhaiterais affecter la chaîne "mapage.aspx?p1=0&p2=1". Dans le code behind, j'utilise donc la propriété "imageurl" du contrôle. Mais le résultat de l'affectation, dans la page html générée est : <img src="mapage.aspx?p1=0&p2=1">
Le "&" est converti en son équivalent html... ce qui n'est pas souhaitable dans ce cas.
Quelqu'un sait-il comment procéder à une affectation directe, sans conversion ?
Merci d'avance.
Pierre.
Lionel Barré [MS]
En effet le contenu de la propriété imageUrl est encodé. Vous ne pouvez pas contourner de façon simple ce comportement. Je m'étonne cependant que vous chargiez une image à partir du résultat d'exécution d'une page ASPX résultat en ASCII à moins que vous n'effectuiez une redirrection dans votre code. Dans ce dernier cas il serait souhaitable d'inclure cette logique directement dans votre page courante...
Si vous tenez néanmoins à charger votre image à partir d'une page aspx voici plusieurs solutions: Solution 1: Vous passez les paramètres autrement Session par exemple.
Solution2: Vous réécrivez le contrôle System.Web.UI.WebControl.Image en en héritant, vous contrôlerez ainsi la façon d'encoder la propriété ImageUrl du contrôle. Cette solution nécessite de sérieuse compétence en écriture de Custom Controls afin qu'elle fonctionne dans de nombreux cas d'utilisation en particulier dans des scénarion de DataBinding. La méthode à réécrire est protected virtual void AddAttributesToRender(HtmlTextWriter writer)
"Pierre" a écrit :
Bonjour,
Sur un contrôle serveur asp:image, je souhaiterais affecter la chaîne "mapage.aspx?p1=0&p2=1". Dans le code behind, j'utilise donc la propriété "imageurl" du contrôle. Mais le résultat de l'affectation, dans la page html générée est : <img src="mapage.aspx?p1=0&p2=1">
Le "&" est converti en son équivalent html... ce qui n'est pas souhaitable dans ce cas.
Quelqu'un sait-il comment procéder à une affectation directe, sans conversion ?
Merci d'avance.
Pierre.
En effet le contenu de la propriété imageUrl est encodé. Vous ne pouvez pas
contourner de façon simple ce comportement. Je m'étonne cependant que vous
chargiez une image à partir du résultat d'exécution d'une page ASPX résultat
en ASCII à moins que vous n'effectuiez une redirrection dans votre code. Dans
ce dernier cas il serait souhaitable d'inclure cette logique directement dans
votre page courante...
Si vous tenez néanmoins à charger votre image à partir d'une page aspx voici
plusieurs solutions:
Solution 1:
Vous passez les paramètres autrement Session par exemple.
Solution2:
Vous réécrivez le contrôle System.Web.UI.WebControl.Image en en héritant,
vous contrôlerez ainsi la façon d'encoder la propriété ImageUrl du contrôle.
Cette solution nécessite de sérieuse compétence en écriture de Custom
Controls afin qu'elle fonctionne dans de nombreux cas d'utilisation en
particulier dans des scénarion de DataBinding.
La méthode à réécrire est
protected virtual void AddAttributesToRender(HtmlTextWriter writer)
"Pierre" a écrit :
Bonjour,
Sur un contrôle serveur asp:image, je souhaiterais affecter la chaîne
"mapage.aspx?p1=0&p2=1".
Dans le code behind, j'utilise donc la propriété "imageurl" du contrôle.
Mais le résultat de l'affectation, dans la page html générée est :
<img src="mapage.aspx?p1=0&p2=1">
Le "&" est converti en son équivalent html... ce qui n'est pas souhaitable
dans ce cas.
Quelqu'un sait-il comment procéder à une affectation directe, sans
conversion ?
En effet le contenu de la propriété imageUrl est encodé. Vous ne pouvez pas contourner de façon simple ce comportement. Je m'étonne cependant que vous chargiez une image à partir du résultat d'exécution d'une page ASPX résultat en ASCII à moins que vous n'effectuiez une redirrection dans votre code. Dans ce dernier cas il serait souhaitable d'inclure cette logique directement dans votre page courante...
Si vous tenez néanmoins à charger votre image à partir d'une page aspx voici plusieurs solutions: Solution 1: Vous passez les paramètres autrement Session par exemple.
Solution2: Vous réécrivez le contrôle System.Web.UI.WebControl.Image en en héritant, vous contrôlerez ainsi la façon d'encoder la propriété ImageUrl du contrôle. Cette solution nécessite de sérieuse compétence en écriture de Custom Controls afin qu'elle fonctionne dans de nombreux cas d'utilisation en particulier dans des scénarion de DataBinding. La méthode à réécrire est protected virtual void AddAttributesToRender(HtmlTextWriter writer)
"Pierre" a écrit :
Bonjour,
Sur un contrôle serveur asp:image, je souhaiterais affecter la chaîne "mapage.aspx?p1=0&p2=1". Dans le code behind, j'utilise donc la propriété "imageurl" du contrôle. Mais le résultat de l'affectation, dans la page html générée est : <img src="mapage.aspx?p1=0&p2=1">
Le "&" est converti en son équivalent html... ce qui n'est pas souhaitable dans ce cas.
Quelqu'un sait-il comment procéder à une affectation directe, sans conversion ?