다음을 통해 공유


Control.ResolveUrl(String) 메서드

정의

URL을 요청 클라이언트에서 사용할 수 있는 URL로 변환합니다.

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

TemplateSourceDirectory 속성과 관련된 URL입니다.

반환

변환된 URL입니다.

예외

relativeUrl 매개 변수에 null이 들어 있으면 발생하는 경우

예제

다음 예제에서는 웹 서버 컨트롤 개체를 Image 만들고 메서드를 사용 하 여 ResolveUrl 이미지에 대 한 경로를 설정 하는 속성입니다 ImageUrl .

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이 포함된 경우 URL은 변경되지 않고 반환됩니다. 매개 변수에 relativeUrl 상대 URL이 포함된 경우 해당 URL은 브라우저에서 URL을 확인할 수 있도록 현재 요청 경로에 맞는 상대 URL로 변경됩니다.

예를 들어 다음 시나리오를 고려할 수 있습니다.

  • 클라이언트가 연결된 이미지가 있는 사용자 컨트롤이 포함된 ASP.NET 페이지를 요청했습니다.

  • ASP.NET 페이지는 /Store/page1.aspx 있습니다.

  • 사용자 컨트롤은 /Store/UserControls/UC1.ascx에 있습니다.

  • 이미지 파일은 /UserControls/Images/Image1.jpg 있습니다.

사용자 컨트롤이 이미지에 대한 상대 경로(즉, /Store/UserControls/Images/Image1.jpg)를 메서드에 ResolveUrl 전달하는 경우 메서드는 /Images/Image1.jpg 값을 반환합니다.

이 메서드는 TemplateSourceDirectory 속성을 사용하여 절대 URL로 확인합니다. 반환된 URL은 클라이언트 사용을 위한 것입니다.

웹 사이트의 리소스 경로에 대한 자세한 내용은 ASP.NET 웹 프로젝트 경로를 참조하세요.

참고

모바일 웹 페이지의 경우 애플리케이션이 쿠키 없는 세션에 의존하거나 쿠키 없는 세션이 필요한 모바일 브라우저에서 요청을 받을 수 있는 경우에만 경로에서 타일("~")을 사용하면 실수로 새 세션을 만들고 세션 데이터가 손실될 수 있습니다. "~/path"와 같은 경로로 속성을 설정하려면 속성에 할당하기 전에 "~/path"와 같은 인수를 사용하여 를 호출 ResolveUrl 하여 경로를 확인합니다.

적용 대상

추가 정보