Chemin relatif ASP.NET
Je suis confus avec ASP.NET chemin d'accès relatif, svp quelqu'un peut-il aider?
Dans une Page principale j'ai donné un lien d'étiquette de référencement:
<a href="~/Account/Login.aspx">Login</a>
De l'ASP.NET la documentation officielle, j'ai lu:
L'exemple suivant montre la ~ opérateur utilisé pour spécifier un chemin relatif à la racine pour une image lors de l'utilisation de l'Image de contrôle du serveur Dans cet exemple, le fichier image est lue à partir du dossier Images qui se trouve directement sous la racine de l'application Web, peu importe où dans le site Web de la page se trouve.
<asp:image runat="server" id="Image1"
ImageUrl="~/Images/SampleImage.jpg" />
Avec le Login de balisage, quand je clique sur le lien d'une page dans le dossier de Compte, je suis redirigé vers:
/Account/~/Account/Login.aspx
Pourquoi? POURQUOI?h
source d'informationauteur Didier Levy
Vous devez vous connecter pour publier un commentaire.
Parce que vous êtes à l'aide directement dans le balisage, plutôt que dans un contrôle serveur. Quelque chose d'aussi simple que cela devrait corriger le problème:
Fondamentalement, la
~
chemin de référence doit être traduite sur le serveur, puisque c'est une référence au chemin d'accès au serveur de l'application dans le répertoire de base. Plaine des balises HTML n'est pas traitée sur le serveur, c'est juste livré en tant que-est pour le client. Seul le serveur-traitées code de traduire le~
chemin d'accès à ce qu'il décide d'.utilisez cette commande
Vous pouvez utiliser ~ lorsque se référant à des Url à l'intérieur de ASP.NET les Contrôles Serveur.
Vous l'utilisez dans un
<a>
balise qui est tout simplement le code html qui doeesn sais rien à propos de ~ . utiliser " "/Images/SampleImage.jpg"' au lieu