Metodo Control.ResolveUrl (System.Web.UI)

Cambia visualizzazione:
ScriptFree
Riferimento a .NET Framework
Metodo Control.ResolveUrl
Il presente articolo è stato tradotto manualmente. Per visualizzare questa pagina e contemporaneamente visualizzarne il contenuto in lingua inglese, passare alla visualizzazione semplificata.

Converte un URL in un formato utilizzabile dal client richiedente.

Spazio dei nomi:  System.Web.UI
Assembly:  System.Web (in System.Web.dll)
Sintassi

Visual Basic
Public Function ResolveUrl ( _
	relativeUrl As String _
) As String
C#
public string ResolveUrl(
	string relativeUrl
)
Visual C++
public:
String^ ResolveUrl(
	String^ relativeUrl
)
F#
member ResolveUrl : 
        relativeUrl:string -> string 

Parametri

relativeUrl
Tipo: System.String
URL associato alla proprietà TemplateSourceDirectory.

Valore restituito

Tipo: System.String
URL convertito.
Eccezioni

Eccezione Condizione
ArgumentNullException

Viene generato se il parametro relativeUrl contiene null.

Note

Se il parametro relativeUrl contiene un URL assoluto, l'URL viene restituito invariato. Se il parametro relativeUrlcontiene 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.

Si consideri ad esempio il seguente scenario:

  • Un client ha richiesto una pagina ASP.NET che contiene un controllo utente con un'immagine associata.

  • Il percorso della pagina ASP.NET è /Store/page1.aspx.

  • Il percorso del controllo utente è /Store/UserControls/UC1.ascx.

  • Il percorso del file di immagine è /UserControls/Images/Image1.jpg.

Se il controllo utente passa il percorso relativo dell'immagine, ossia /Store/UserControls/Images/Image1.jpg, al metodo ResolveUrl, il metodo restituirà il valore /Images/Image1.jpg.

Questo metodo utilizza la proprietà TemplateSourceDirectory per risolvere un URL assoluto. L'URL restituito può essere utilizzato dal client.

Per ulteriori informazioni sui percorsi delle risorse in un sito Web, vedere Percorsi del sito Web ASP.NET.

Nota Nota

Se l'applicazione utilizzata si basa su sessioni senza cookie o riceve richieste da browser per dispositivi mobili che richiedono sessioni senza cookie, l'utilizzo di una tilde ("~") in un percorso può causare inavvertitamente la creazione di una nuova sessione e la perdita potenziale dei dati della sessione (solo per le pagine Web per dispositivi mobili). Per impostare una proprietà con un percorso quale "~/percorso", risolvere il percorso chiamando il metodo ResolveUrl con un argomento quale "~/percorso" prima di assegnarlo alla proprietà.

Esempi

Nell'esempio riportato di seguito viene creato un oggetto controllo server Web Image e utilizzato il metodo ResolveUrl per impostare il percorso dell'immagine memorizzata dalla proprietà ImageUrl.

Visual Basic

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


C#

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);         
   }     
}


Informazioni sulla versione

.NET Framework

Supportato in: 4, 3.5, 3.0, 2.0, 1.1, 1.0
Piattaforme

Windows 7, Windows Vista SP1 o versione successiva, Windows XP SP3, Windows XP SP2 x64 Edition, Windows Server 2008 (componenti di base del server non supportati), Windows Server 2008 R2 (componenti di base del server supportati con SP1 o versione successiva), Windows Server 2003 SP2

.NET Framework non supporta tutte le versioni di ciascuna piattaforma. Per un elenco delle versioni supportate, vedere Requisiti di sistema di .NET Framework.
Vedere anche

Riferimenti

Altre risorse