Partager via


Control.ResolveUrl(String) Méthode

Définition

Convertit une URL en une URL utilisable sur le client demandeur.

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 TemplateSourceDirectory propriété.

Retours

URL convertie.

Exceptions

Se produit si le relativeUrl paramètre 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é 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 la requête actuelle, afin que le navigateur puisse résoudre l’URL.

Par exemple, examinez 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 sur /Store/page1.aspx.

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

  • Le fichier image se trouve à l’emplacement /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 utilisée par le client.

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

Note

Pour les pages web mobiles uniquement, si votre application s’appuie sur des sessions sans cookie ou peut recevoir des demandes de navigateurs mobiles qui nécessitent des sessions sans cookie, l’utilisation d’un tilde (« ~ ») dans un chemin peut entraîner la création par inadvertance d’une session et la perte potentielle des 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 l’argument ResolveUrl avec un argument tel que « ~/path » avant de l’affecter à la propriété.

S’applique à

Voir aussi