ClientScriptManager.GetWebResourceUrl(Type, String) 方法
定義
重要
部分資訊涉及發行前產品,在發行之前可能會有大幅修改。 Microsoft 對此處提供的資訊,不做任何明確或隱含的瑕疵擔保。
取得對組件中資源的 URL 參考。
public:
System::String ^ GetWebResourceUrl(Type ^ type, System::String ^ resourceName);
public string GetWebResourceUrl (Type type, string resourceName);
member this.GetWebResourceUrl : Type * string -> string
Public Function GetWebResourceUrl (type As Type, resourceName As String) As String
參數
- type
- Type
資源類型。
- resourceName
- String
組件中資源的完整名稱。
傳回
對資源的 URL 參考。
例外狀況
範例
下列程式代碼範例示範 如何使用 GetWebResourceUrl 方法。 此範例中的 type 參數會設定為包含資源的元件中的類別類型。 參數 resourceName
是以資源的完整路徑指定,其中包含預設命名空間。
<%@ Page Language="C#"%>
<%@ Import Namespace="Samples.AspNet.CS.Controls" %>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<script runat="server">
public void Page_Load(Object sender, EventArgs e)
{
// Define the resource name and type.
String rsname = "Samples.AspNet.CS.Controls.script_include.js";
Type rstype = typeof(ClientScriptResourceLabel);
// Get a ClientScriptManager reference from the Page class.
ClientScriptManager cs = Page.ClientScript;
// Write out the web resource url.
ResourcePath.InnerHtml = cs.GetWebResourceUrl(rstype, rsname);
// Register the client resource with the page.
cs.RegisterClientScriptResource(rstype, rsname);
}
</script>
<html xmlns="http://www.w3.org/1999/xhtml" >
<head>
<title>ClientScriptManager Example</title>
</head>
<body>
<form id="Form1"
runat="server">
The web resource path is
<span id="ResourcePath"
runat="server"/>.
<br />
<br />
<input type="text"
id="Message" />
<input type="button"
onclick="DoClick()"
value="ClientClick" />
</form>
</body>
</html>
<%@ Page Language="VB" %>
<%@ Import Namespace="Samples.AspNet.VB.Controls" %>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<script runat="server">
Protected Sub Page_Load(ByVal sender As Object, ByVal e As System.EventArgs)
' Define the resource name and type.
Dim rsname As String = "Samples.AspNet.VB.Controls.script_include.js"
Dim rstype As Type = GetType(ClientScriptResourceLabel)
' Get a ClientScriptManager reference from the Page class.
Dim cs As ClientScriptManager = Page.ClientScript
' Write out the web resource url.
ResourcePath.InnerHtml = cs.GetWebResourceUrl(rstype, rsname)
' Register the client resource with the page.
cs.RegisterClientScriptResource(rstype, rsname)
End Sub
</script>
<html xmlns="http://www.w3.org/1999/xhtml" >
<head>
<title>ClientScriptManager Example</title>
</head>
<body>
<form id="Form1"
runat="server">
The web resource path is
<span id="ResourcePath"
runat="server"/>.
<br />
<br />
<input type="text"
id="Message" />
<input type="button"
onclick="DoClick()"
value="ClientClick" />
</form>
</body>
</html>
下列程式代碼範例示範如何以程序設計方式套用 WebResourceAttribute 元數據屬性,以標記將服務的資源元件。 依您使用的語言,在類別庫中編譯下列類別,並將預設命名空間設定為 Samples.AspNet.CS.Controls
或 Samples.AspNet.VB.Controls
。
using System;
using System.Web;
using System.Web.UI;
using System.Security.Permissions;
[assembly: WebResource("Samples.AspNet.CS.Controls.script_include.js", "application/x-javascript")]
namespace Samples.AspNet.CS.Controls
{
[AspNetHostingPermission(SecurityAction.Demand, Level = AspNetHostingPermissionLevel.Minimal)]
public class ClientScriptResourceLabel
{
// Class code goes here.
}
}
Imports System.Web
Imports System.Web.UI
Imports System.Security.Permissions
<Assembly: WebResource("Samples.AspNet.VB.Controls.script_include.js", "application/x-javascript")>
Namespace Samples.AspNet.VB.Controls
<AspNetHostingPermission(SecurityAction.Demand, Level:=AspNetHostingPermissionLevel.Minimal)> _
Public Class ClientScriptResourceLabel
' Class code goes here.
End Class
End Namespace
此範例需要名為的 Script_include.js
JavaScript 檔案。 .js 檔案是包含 ClientScriptResourceLabel
物件的元件中的內嵌資源。 如果您使用 Visual Studio,請在類別庫專案的 [屬性] 視窗中,於選取腳本檔案時,將 [建置動作 ] 設定為 [內嵌資源 ]。 如果您要在命令行編譯連結庫,請使用 /resource 參數來內嵌資源。
function DoClick() {Form1.Message.value='Text from resource script.'}
備註
方法會 GetWebResourceUrl 傳回內嵌在元件中的資源的 URL 參考。 傳回的參考不是 URL 編碼。 資源可以是腳本檔案、映像或任何靜態檔案。 您可以根據將存取資源的物件來指定型別。
向頁面註冊的 Web 資源會以其類型和名稱唯一識別。 只有一個具有指定類型和名稱組的資源可以向頁面註冊。 嘗試註冊已註冊的資源並不會建立已註冊資源的重複專案。
方法 GetWebResourceUrl 會與 方法搭配使用, RegisterClientScriptResource 以存取內嵌在元件中的資源。 如需在應用程式中使用資源的詳細資訊,請參閱 ASP.NET 網頁資源概觀。