Partager via


Control.ResolveUrl(String) Méthode

Définition

Convertit une URL en une URL que le client soit en mesure d'utiliser.

public:
 System::String ^ ResolveUrl(System::String ^ relativeUrl);
public string ResolveUrl (string relativeUrl);
member this.ResolveUrl : string -> string
Public Function ResolveUrl (relativeUrl As String) As String

Paramètres

relativeUrl
String

URL associée à la propriété TemplateSourceDirectory.

Retours

URL convertie.

Exceptions

Se produit si le paramètre relativeUrl contient null.

Exemples

L’exemple suivant crée un Image objet de contrôle serveur web et utilise la ResolveUrl méthode pour définir le chemin d’accès à l’image, qui est stockée par la ImageUrl propriété .

public class MyResolveUrl:Control
{
   private string _ImageUrl;     
   public string ImageUrl
   {
      get
      {
         return _ImageUrl;
      }
      set
      {
         _ImageUrl = value;
      }
   }
   protected override void Render(HtmlTextWriter output)
   {           
      Image myImage = new Image();
      // Resolve Url.
      myImage.ImageUrl = ResolveUrl(this.ImageUrl);
      myImage.RenderControl(output);         
   }     
}
Public Class MyResolveUrl
   Inherits Control
   Private _ImageUrl As String

   Public Property ImageUrl() As String
      Get
         Return _ImageUrl
      End Get
      Set
         _ImageUrl = value
      End Set
   End Property

   Protected Overrides Sub Render(output As HtmlTextWriter)
      Dim myImage As New System.Web.UI.WebControls.Image()
      ' Resolve Url.
      myImage.ImageUrl = ResolveUrl(Me.ImageUrl)
      myImage.RenderControl(output)
   End Sub
End Class

Remarques

Si le relativeUrl paramètre contient une URL absolue, l’URL est retournée inchangée. Si le relativeUrl paramètre contient une URL relative, cette URL est remplacée par une URL relative correcte pour le chemin de requête actuel, afin que le navigateur puisse résoudre l’URL.

Par exemple, considérez le scénario suivant :

  • Un client a demandé une page ASP.NET qui contient un contrôle utilisateur associé à une image.

  • La page ASP.NET se trouve dans /Store/page1.aspx.

  • Le contrôle utilisateur se trouve dans /Store/UserControls/UC1.ascx.

  • Le fichier image se trouve dans /UserControls/Images/Image1.jpg.

Si le contrôle utilisateur transmet le chemin relatif à l’image (autrement dit, /Store/UserControls/Images/Image1.jpg) à la ResolveUrl méthode, la méthode retourne la valeur /Images/Image1.jpg.

Cette méthode utilise la TemplateSourceDirectory propriété pour résoudre l’URL absolue. L’URL retournée est destinée au client.

Pour plus d’informations sur les chemins d’accès aux ressources dans un site Web, consultez ASP.NET chemins d’accès de projet web.

Notes

Pour les pages web mobiles uniquement, si votre application s’appuie sur des sessions sans cookie ou peut recevoir des requêtes de navigateurs mobiles qui nécessitent des sessions sans cookie, l’utilisation d’un tilde (« ~ ») dans un chemin d’accès peut entraîner la création par inadvertance d’une session et la perte de données de session. Pour définir une propriété avec un chemin d’accès tel que « ~/path », résolvez le chemin en appelant le ResolveUrl avec un argument tel que « ~/path » avant de l’affecter à la propriété .

S’applique à

Voir aussi