Control.ResolveUrl(String) メソッド
定義
重要
一部の情報は、リリース前に大きく変更される可能性があるプレリリースされた製品に関するものです。 Microsoft は、ここに記載されている情報について、明示または黙示を問わず、一切保証しません。
要求側クライアントで使用できる 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
を格納している場合に発生します。
例
次の例では、Web サーバー コントロール オブジェクトを 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 は、クライアント用です。
Web サイトのリソース パスの詳細については、「ASP.NET Web プロジェクト パス」を参照してください。
注意
モバイル Web ページの場合のみ、アプリケーションが Cookie レス セッションに依存している場合、または Cookie レス セッションを必要とするモバイル ブラウザーから要求を受信する可能性がある場合、パスでチルダ ("~") を使用すると、誤って新しいセッションが作成され、セッション データが失われる可能性があります。 "~/path" などのパスを持つプロパティを設定するには、"~/path" などの引数を指定して を ResolveUrl 呼び出してパス を解決してから、 プロパティに割り当てます。
適用対象
こちらもご覧ください
.NET