2010-06-17 3 views
1
ImageUrl='<%#Eval("Name","../Master Pages/DisasterImages/") %>'+'<%#Eval("Request.QueryString["DisID"].ToString()/{0}") %>' 

DisID est un nom de dossier.Comment lier Request.QueryString [ ""] à eval() dans ASP.NET

Ce que je veux, c'est afficher les images dans le répertoire. Je l'ai fait en utilisant un contrôle de répéteur. Le problème est maintenant que je veux obtenir le nom du dossier dans le QueryString. Comment puis-je faire ceci? Ci-dessus est le code que j'ai essayé sans atteindre le résultat souhaité ...

Toute aide aurait apprécié.

Merci!

Répondre

3

utilisez <% = au lieu de <% #. Exemple:

<%= Request.QueryString["DisID"] %> 

J'ai remarqué un autre problème avec votre code, vous devez faire attention lorsque vous utilisez des guillemets dans une chaîne. Vous devez leur échapper. Par conséquent

"Request.QueryString["DisID"].ToString()/{0}" 

devrait ressembler à ceci

"Request.QueryString[\"DisID\"].ToString()/{0}" 

Notez la barre oblique inverse qui sert à l'échappement des caractères.

+0

hi Genady, le chemin auquel je veux accéder est ../Master Pages/DisasterImages/XXX/{0}. XXX est le nom que je veux obtenir de QueryString.Still je ne l'ai pas fonctionné. Ensuite, c'est ce que j'ai essayé cette fois. ImageUrl = '<% # Eval ("Nom", "../ Pages maîtres/DisasterImages /")%>' + '<% = Request.QueryString [\ "DisID \"]. ToString()/{0}% > ' – chamara

+0

Vous n'avez pas besoin d'appeler ToString lors de la récupération des paramètres de chaîne de requête car ils sont déjà des chaînes. Y at-il des erreurs lorsque le code est exécuté, pourquoi avez-vous besoin de la chaîne {0}. Que se passe-t-il si vous supprimez cette partie? Gardez à l'esprit que les expressions <% # ne sont évaluées que lorsqu'on appelle DataBind sur le contrôle correspondant. –

+0

cela ne fonctionnait pas à l'intérieur de l'aspx, au lieu de la variable, la réponse est <% = Request.QueryString ['DisID']%> –

Questions connexes