Control.ResolveUrl(String) Méthode
Définition
Important
Certaines informations portent sur la préversion du produit qui est susceptible d’être en grande partie modifiée avant sa publication. Microsoft exclut toute garantie, expresse ou implicite, concernant les informations fournies ici.
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é .