2009-09-23 7 views
2

Quelle est la meilleure façon d'obtenir une URL relative à la page en cours?Bonne pratique: URL relative

string url = Request.ApplicationPath + "/MyFolder/MyFile.aspx"; 

ou

string url = Page.ResolveURL("~/MyFolder/MyFile.aspx"); 

J'utilise la méthode précédente, mais il y avait une question posée plus tôt aujourd'hui Relative path from a root operator (”~”) address in code behind qui m'a fait me demander si ce que je faisais était la meilleure façon.

Répondre

2

Je préfère utiliser

string url = Page.ResolveURL("~/MyFolder/MyFile.aspx"); 

Mais souvent vous pouvez utiliser juste "~/MonDossier/MyFile.aspx" (HyperLink.NavigateUrl, Response.Redirect(), etc.).

Je ne pense pas que l'une ou l'autre façon soit meilleure/pire, c'est juste une préférence. Je pense que le plus important est que vous utilisiez toujours la même méthode.

+0

+ 1 pour le commentaire de cohérence, je vais laisser cette question ouverte jusqu'à demain, pour avoir d'autres opinions mais j'avais le sentiment que c'était une de ces questions de type "préférence personnelle". À moins que quelqu'un puisse définitivement montrer que l'un est meilleur que l'autre, je choisirai cela comme réponse. –

0

J'utilise:

string url = string.Format("{0}/Folder/SubFolder/File.aspx", ResolveClientURL("~")); 

Je trouve être le methd plus facile et plus fiable.

Questions connexes