共用方式為


ClientScriptManager.GetWebResourceUrl(Type, String) 方法

定義

取得對組件中資源的 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 參考。

例外狀況

Web 資源類型為 null

-或-

Web 資源名稱為 null

-或-

Web 資源名稱長度為零。

範例

下列程式代碼範例示範 如何使用 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.ControlsSamples.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.jsJavaScript 檔案。 .js 檔案是包含 ClientScriptResourceLabel 物件的元件中的內嵌資源。 如果您使用 Visual Studio,請在類別庫專案的 [屬性] 視窗中,於選取腳本檔案時,將 [建置動作 ] 設定為 [內嵌資源 ]。 如果您要在命令行編譯連結庫,請使用 /resource 參數來內嵌資源。

function DoClick() {Form1.Message.value='Text from resource script.'}  

備註

方法會 GetWebResourceUrl 傳回內嵌在元件中的資源的 URL 參考。 傳回的參考不是 URL 編碼。 資源可以是腳本檔案、映像或任何靜態檔案。 您可以根據將存取資源的物件來指定型別。

向頁面註冊的 Web 資源會以其類型和名稱唯一識別。 只有一個具有指定類型和名稱組的資源可以向頁面註冊。 嘗試註冊已註冊的資源並不會建立已註冊資源的重複專案。

方法 GetWebResourceUrl 會與 方法搭配使用, RegisterClientScriptResource 以存取內嵌在元件中的資源。 如需在應用程式中使用資源的詳細資訊,請參閱 ASP.NET 網頁資源概觀

適用於

另請參閱