Control.ResolveUrl(String) Control.ResolveUrl(String) Control.ResolveUrl(String) Control.ResolveUrl(String) Method

Определение

Преобразует URL-адрес в адрес, доступный для клиента.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

Параметры

relativeUrl
String String String String

URL-адрес, связанный со свойством TemplateSourceDirectory.The URL associated with the TemplateSourceDirectory property.

Возвраты

Преобразованный URL-адрес.The converted URL.

Исключения

Происходит, если параметр relativeUrl содержит null.Occurs if the relativeUrl parameter contains null.

Примеры

В следующем примере создается Image объект серверного веб-элемента управления и ResolveUrl используется метод для задания пути к изображению, ImageUrl которое хранится в свойстве.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

Комментарии

relativeUrl Если параметр содержит абсолютный URL-адрес, он возвращается без изменений.If the relativeUrl parameter contains an absolute URL, the URL is returned unchanged. relativeUrl Если параметр содержит относительный URL-адрес, этот URL-адрес изменяется на относительный URL-адрес, соответствующий текущему пути запроса, чтобы браузер мог разрешить 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.

Например, рассмотрим следующий сценарий.For example, consider the following scenario:

  • Клиент запросил страницу ASP.NET, содержащую пользовательский элемент управления с связанным с ним изображением.A client has requested an ASP.NET page that contains a user control that has an image associated with it.

  • Страница ASP.NET находится по адресу/Store/Page1.aspx.The ASP.NET page is located at /Store/page1.aspx.

  • Пользовательский элемент управления расположен по адресу/Store/UserControls/UC1.ascx.The user control is located at /Store/UserControls/UC1.ascx.

  • Файл изображения находится по адресу/UserControls/Images/Image1.jpg.The image file is located at /UserControls/Images/Image1.jpg.

Если пользовательский элемент управления передает относительный путь к изображению (то есть/Store/UserControls/images/image1.jpg) ResolveUrl в метод, метод возвратит значение/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.

Этот метод использует TemplateSourceDirectory свойство для разрешения в абсолютный URL-адрес.This method uses the TemplateSourceDirectory property to resolve to the absolute URL. Возвращаемый URL-адрес предназначен для использования клиентом.The returned URL is for client use.

Дополнительные сведения о путях ресурсов на веб-сайте см. в разделе ASP.NET Web Project paths.For more information on resource paths in a Web site, see ASP.NET Web Project Paths.

Примечание

Для мобильных веб-страниц, если приложение использует сеансы без файлов cookie или может принимать запросы от мобильных браузеров, требующих сеансов без файлов cookie, использование тильды~("") в пути может привести к случайному созданию нового сеанса и возмогут потерять данные сеанса.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. Чтобы задать свойство с~путем/~/** ResolveUrl , например "Path", необходимо разрешить путь, вызвав метод с аргументом, таким как "path" , перед его присвоением свойству.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.

Применяется к

Дополнительно