Control.ResolveUrl(String) Methode
Definition
Wichtig
Einige Informationen beziehen sich auf Vorabversionen, die vor dem Release ggf. grundlegend überarbeitet werden. Microsoft übernimmt hinsichtlich der hier bereitgestellten Informationen keine Gewährleistungen, seien sie ausdrücklich oder konkludent.
Konvertiert eine URL in eine vom anfordernden Client verwendbare URL.
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
Parameter
- relativeUrl
- String
Die der TemplateSourceDirectory-Eigenschaft zugeordnete URL.
Gibt zurück
Die konvertierte URL.
Ausnahmen
Tritt ein, wenn der relativeUrl
-Parameter null
enthält.
Beispiele
Im folgenden Beispiel wird ein Image Webserversteuerelementobjekt erstellt und mithilfe der ResolveUrl -Methode der Pfad zum Image festgelegt, das von der ImageUrl -Eigenschaft gespeichert wird.
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
Hinweise
Wenn der relativeUrl
Parameter eine absolute URL enthält, wird die URL unverändert zurückgegeben. Wenn der relativeUrl
Parameter eine relative URL enthält, wird diese URL in eine relative URL geändert, die für den aktuellen Anforderungspfad korrekt ist, damit der Browser die URL auflösen kann.
Betrachten Sie beispielsweise das folgende Szenario:
Ein Client hat eine ASP.NET Seite angefordert, die ein Benutzersteuerelement enthält, dem ein Image zugeordnet ist.
Die ASP.NET Seite befindet sich unter /Store/page1.aspx.
Das Benutzersteuerelement befindet sich unter /Store/UserControls/UC1.ascx.
Die Imagedatei befindet sich unter /UserControls/Images/Image1.jpg.
Wenn das Benutzersteuerelement den relativen Pfad zum Image (d. h. /Store/UserControls/Images/Image1.jpg) an die ResolveUrl -Methode übergibt, gibt die Methode den Wert /Images/Image1.jpg zurück.
Diese Methode verwendet die TemplateSourceDirectory -Eigenschaft, um in die absolute URL aufzulösen. Die zurückgegebene URL ist für die Clientverwendung vorgesehen.
Weitere Informationen zu Ressourcenpfaden auf einer Website finden Sie unter ASP.NET Webprojektpfade.
Hinweis
Nur für mobile Webseiten, wenn Ihre Anwendung cookielose Sitzungen verwendet oder Anforderungen von mobilen Browsern empfängt, die cookielose Sitzungen erfordern, kann die Verwendung einer Tilde ("~") in einem Pfad dazu führen, dass versehentlich eine neue Sitzung erstellt wird und möglicherweise Sitzungsdaten verloren gehen. Um eine Eigenschaft mit einem Pfad wie "~/path" festzulegen, lösen Sie den Pfad auf, indem Sie mit ResolveUrl einem Argument wie "~/path" aufrufen, bevor Sie ihn der Eigenschaft zuweisen.