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

String

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é 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 modifiée en URL relative correcte pour le chemin d’accès 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 sur /Store/page1.aspx.

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

  • Le fichier image se trouve sur /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 web Project.

Notes

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 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 l’argument ResolveUrl avec un argument tel que «~/ path » avant de l’affecter à la propriété.

S’applique à

Voir aussi