2010-11-18 28 views
3

je voudrais analyser QueryString et mettre la valeur d'ID sur le chemin de imgURL, je suis en train de ce code:Problèmes avec la directive de préprocesseur pour la propriété imgURL de l'image dans ASP.NET

<asp:Image ID="imgImageNormal" runat="server" ImageUrl='<%# string.Format("ImageHandler.ashx?ID={0}",Request.QueryString["ID"].ToString()) %>'/> 

Mais le résultat produit est aucun. Je ne reçois aucun message d'erreur, mais après avoir vu la source de la page, c'est la sortie de l'image:

<img id="ctl00_ContentPlaceHolder1_imgImageNormal" src="" style="border-width:0px;" /> 

Qu'est-ce que je fais mal?

Répondre

1

Est-ce que c'est dans le contexte de la liaison? Sinon, la syntaxe <%#...%> ne fonctionnera pas. Ce code fonctionne:

<img ID="imgImageNormal" src=<%=string.Format("ImageHandler.ashx?ID={0}",Request.QueryString["ID"].ToString())%> /> 

Notez que le réglage runat="server" ou renfermant les attributs src entre guillemets causeront échouer cette opération. Bien que ce qui précède fonctionne mieux, il vaut mieux simplement définir la propriété imageurl d'un contrôle asp: image à partir du codebehind sur l'événement page_load.

Pour référence où utiliser des balises inline asp.net consultez ce site: http://naspinski.net/post/inline-aspnet-tags-sorting-them-all-out-(3c25242c-3c253d2c-3c252c-3c252c-etc).aspx