2010-01-04 5 views
0

J'utilise ResolveClientUrl pour inclure des fichiers CSS dans ma page. Lorsqu'il est lancé via le serveur Web, tout est OK, mais en mode conception, les styles css ne sont pas appliqués à la page. J'utilise VS 2010 beta 2.Le mode de conception dans Visual Studio n'inclut pas les ressources spécifiées avec ResolveClientUrl

<link href= "<%= ResolveClientUrl("~/Styles/Site.css") %>" rel="stylesheet" type="text/css" /> 

Même chose lorsque j'utilise une expression pour spécifier une URL pour css. Comment puis-je le réparer? Ou est-ce un bug de bêta?

Répondre

1

C'est une limitation inhérente aux deux. J'ai contacté Microsoft il y a 3 ans à propos du même problème.

La solution consiste à placer le chemin directement dans l'attribut href. Cela devrait fonctionner correctement alors.

Il peut toutefois présenter des dysfonctionnements lors de l'exécution, en fonction de votre utilisation de la réécriture ou du routage d'URL. Le vrai bug ici n'est pas en mode design, mais dans le framework ASP.NET, car il n'analyse pas et ne résout pas correctement les balises < link> quand elles sont utilisées dans des pages de contenu (creuser avec Reflector pour trouver vous) ...

Vous pouvez en savoir plus sur la question et la façon de le fixer dans un (manière je l'espère) à l'épreuve ici: http://nathanaeljones.com/146/referencing-stylesheets-scripts-from-content-pages/

+0

tou Merci pour votre réponse et l'explication. BTW, sur votre page liens pour le téléchargement de fichiers sont corrompus. J'ai décidé d'ajouter un littéral dans l'en-tête avec le chemin correct au moment du design et de l'ajouter au chemin spécifié dans apllicationSettings à la page load-time pour former l'URL complète. Il est donc possible de changer le chemin vers CSS sans recompilation et même le servir par un autre serveur. Même chose avec les scripts et les images. Dans mon cas, seule une partie d'un site Web est desservie par ASP.Net. Le chemin le plus ancien est écrit en PHP et serveur par Apache. Et Apache reverse prxies demande au site ASP.Net plus récent servi par IIS sur un autre serveur. – flashnik

+0

Merci pour les heads up .... Je suppose que j'ai raté quelques liens lors de ma récente migration vers wordpress. Les liens de téléchargement devraient fonctionner maintenant, mais le scénario de test en direct ne fonctionne pas encore. –

Questions connexes