Control.ResolveUrl(String) Metoda

Definice

Převede adresu URL na tu, která je použitelná na žádajícím klientovi.Converts a URL into one that is usable on the requesting client.

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

Parametry

relativeUrl
String

Adresa URL přidružená k TemplateSourceDirectory vlastnostiThe URL associated with the TemplateSourceDirectory property.

Návraty

String

Převedená adresa URL.The converted URL.

Výjimky

Nastane, pokud relativeUrl parametr obsahuje null .Occurs if the relativeUrl parameter contains null.

Příklady

Následující příklad vytvoří Image objekt ovládacího prvku webového serveru a pomocí ResolveUrl metody nastaví cestu k obrázku, který je uložen ImageUrl vlastností.The following example creates an Image Web server control object and uses the ResolveUrl method to set the path to the image, which is stored by the ImageUrl property.

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

Poznámky

Pokud relativeUrl parametr obsahuje absolutní adresu URL, adresa URL se vrátí beze změny.If the relativeUrl parameter contains an absolute URL, the URL is returned unchanged. Pokud relativeUrl parametr obsahuje relativní adresu URL, tato adresa URL se změní na relativní adresu URL, která je správná pro aktuální cestu požadavku, aby prohlížeč mohl přeložit adresu URL.If the relativeUrl parameter contains a relative URL, that URL is changed to a relative URL that is correct for the current request path, so that the browser can resolve the URL.

Představte si třeba následující scénář:For example, consider the following scenario:

  • Klient požádal o stránku ASP.NET, která obsahuje uživatelský ovládací prvek s přiřazenou obrázkem.A client has requested an ASP.NET page that contains a user control that has an image associated with it.

  • Stránka ASP.NET je umístěna na adrese/Store/Page1.aspx.The ASP.NET page is located at /Store/page1.aspx.

  • Uživatelský ovládací prvek se nachází na adrese/Store/UserControls/UC1.ascx.The user control is located at /Store/UserControls/UC1.ascx.

  • Soubor bitové kopie se nachází na adrese/UserControls/Images/Image1.jpg.The image file is located at /UserControls/Images/Image1.jpg.

Pokud uživatelský ovládací prvek předá do této metody relativní cestu (tj./Store/UserControls/Images/Image1.jpg) ResolveUrl , metoda vrátí hodnotu/Images/Image1.jpg.If the user control passes the relative path to the image (that is, /Store/UserControls/Images/Image1.jpg) to the ResolveUrl method, the method will return the value /Images/Image1.jpg.

Tato metoda používá TemplateSourceDirectory vlastnost k přeložení na absolutní adresu URL.This method uses the TemplateSourceDirectory property to resolve to the absolute URL. Vrácená adresa URL je určena pro použití klientem.The returned URL is for client use.

Další informace o cestách prostředků na webu najdete v tématu ASP.NET cesty k webovým projektům.For more information on resource paths in a Web site, see ASP.NET Web Project Paths.

Poznámka

Pouze pro mobilní webové stránky, pokud vaše aplikace spoléhá na relace bez souborů cookie nebo mohou přijímat žádosti z mobilních prohlížečů, které vyžadují relace bez souborů cookie, může použití vlnovky (" ~ ) v cestě způsobit neúmyslné vytvoření nové relace a potenciálně ztrátu dat relace.For mobile Web pages only, if your application relies on cookieless sessions or might receive requests from mobile browsers that require cookieless sessions, using a tilde ("~") in a path can result in inadvertently creating a new session and potentially losing session data. Chcete-li nastavit vlastnost s cestou, jako je například " ~ / cesta", vyřešte cestu voláním ResolveUrl s argumentem, jako je " ~ / path" , než jej přiřadíte do vlastnosti.To set a property with a path such as "~/path", resolve the path by calling the ResolveUrl with an argument such as "~/path" before assigning it to the property.

Platí pro

Viz také