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 建立 Web 服務器控制項物件,並使用 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 Web 專案路徑

注意

僅適用于行動網頁,如果您的應用程式依賴無 Cookie 會話,或可能會從需要無 Cookie 會話的行動瀏覽器收到要求,則使用波浪線 (「~」) 路徑可能會導致不小心建立新的會話,並可能會遺失會話資料。 若要使用 「~/path」之類的路徑來設定屬性,請先使用 「~/path」之類的引數呼叫 ResolveUrl 來解析路徑,然後再將它指派給 屬性。

適用於

另請參閱