Condividi tramite


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 usato il metodo per impostare il ResolveUrl 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 contenente un controllo utente associato a 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 proprietà per risolvere l'URL TemplateSourceDirectory assoluto. L'URL restituito è per l'uso del client.

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

Nota

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

Si applica a

Vedi anche