Control.ResolveUrl(String) Metodo

Definizione

Converte un URL in un formato utilizzabile dal client richiedente.

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

Parametri

relativeUrl
String

URL associato alla proprietà TemplateSourceDirectory.

Restituisce

URL convertito.

Eccezioni

Viene generato se il parametro relativeUrl contiene null.

Esempio

Nell'esempio seguente viene creato un Image oggetto controllo server Web e viene utilizzato il ResolveUrl metodo per impostare il percorso dell'immagine, archiviato dalla ImageUrl proprietà .

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

Commenti

Se il relativeUrl parametro contiene un URL assoluto, l'URL viene restituito invariato. Se il relativeUrl parametro contiene un URL relativo, tale URL viene modificato in un URL relativo corretto per il percorso della richiesta corrente, in modo che il browser possa risolvere l'URL.

Prendere ad esempio in considerazione i seguenti scenari:

  • Un client ha richiesto una pagina di ASP.NET che contiene un controllo utente a cui è associata un'immagine.

  • La pagina ASP.NET è /Store/Page1.aspx.

  • Il controllo utente si trova in /Store/UserControls/UC1.ascx.

  • Il file di immagine si trova in /UserControls/Images/Image1.jpg.

Se il controllo utente passa il percorso relativo dell'immagine (vale a dire /Store/UserControls/Images/Image1.jpg) per il ResolveUrl (metodo), il metodo restituirà il valore /Images/Image1.jpg.

Questo metodo usa la TemplateSourceDirectory proprietà per risolvere l'URL assoluto. L'URL restituito è destinato all'uso del client.

Per altre informazioni sui percorsi delle risorse in un sito Web, vedere ASP.NET Percorsi di progetto Web.

Nota

Solo per le pagine Web per dispositivi mobili, se l'applicazione si basa su sessioni senza cookie o potrebbe ricevere richieste da browser per dispositivi mobili che richiedono sessioni senza cookie, l'uso di una tilde ("~") in un percorso può comportare inavvertitamente la creazione di una nuova sessione e la potenziale perdita di dati di sessione. Per impostare una proprietà con un percorso come "~/path", risolvere il percorso chiamando ResolveUrl con un argomento come "~/path" prima di assegnarlo alla proprietà .

Si applica a

Vedi anche