2010-09-20 5 views
0

Déplacé d'une application Web à un site Web, a commencé à déplacer le code ... et maintenant j'ai un problème très étrange. Tout d'abord, ma racine/Website1/apparaît quand je lance le site web:ASP.net: Déplacé de WebApp vers le site Web, problème avec les URL

http://localhost/Website1/Default.aspx

Mais si je vais à une option de sous-menu, toutes mes URL sont mis à http://localhost/SubMenuOption.aspx, donc de ne pas trouver mon pages Il semble que ~/SubMenuOption.aspx ne fonctionne pas.

De plus, les fichiers JS se lient étrangement. Sur une page à l'intérieur d'un dossier, je n'arrive pas à créer un lien vers le dossier JS du dossier racine.

<script src="../js/jquery.js" /> 

Cela devrait descendre dans un dossier, mais ce n'est pas le cas. Il hérite en fait le nom du dossier que je suis si ... http://localhost/Website1/Common/Sub.aspx le fichier JS apparaît comme http://localhost/Website1/Common/js/jquery.js

Le fichier est en fait dans http://localhost/Website1/js/jquery.js

Peu importe ce que je fais au script src que ce soit runat = "serveur" et ~/ou/js/ou quoi que ce soit, il sort toujours avec le dossier. Quel est le problème ici? Est-ce une sorte de problème de réglage?

Répondre

0

Resolve vos liens de la racine comme ceci:

<a href="~/SubMenuOption.aspx" id="link1" runat="server">Menu Item 1</a> 

Assurez-vous d'inclure les attributs ci-dessus; l'attribut runat est nécessaire pour que le lien soit résolu côté serveur.

Essayez la méthode ResolveURL() intégrée à votre lien de script.

+0

Le ResolveURL semble fonctionner sur mes chemins de fichier JS, que je crois avoir déjà essayés auparavant. Donc c'est bien. Mon menu est créé dans une classe compilée en dehors du projet, donc ResolveURL ne fonctionnera pas. J'ai essayé de l'intégrer dans le HTML actuel, n'a pas fonctionné. – jlrolin

+0

A fini par devoir envoyer le Request.ApplicationPath au serveur, mais tout a fonctionné. Merci. – jlrolin

0

Bien sûr, vous espérez que vous vouliez dire que vous êtes passé d'un site Web à une application Web?

+0

Non, malheureusement. – jlrolin

Questions connexes