ClientScriptManager.GetWebResourceUrl(Type, String) Yöntem
Tanım
Önemli
Bazı bilgiler ürünün ön sürümüyle ilgilidir ve sürüm öncesinde önemli değişiklikler yapılmış olabilir. Burada verilen bilgilerle ilgili olarak Microsoft açık veya zımni hiçbir garanti vermez.
Derlemedeki bir kaynağa URL başvurusu alır.
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
Parametreler
- type
- Type
Kaynağın türü.
- resourceName
- String
Derlemedeki kaynağın tam adı.
Döndürülenler
Kaynağa url başvurusu.
Özel durumlar
Web kaynak türü şeklindedir null
.
-veya-
Web kaynağı adı şeklindedir null
.
-veya-
Web kaynağı adının uzunluğu sıfırdır.
Örnekler
Aşağıdaki kod örneği yönteminin GetWebResourceUrl kullanımını gösterir. Bu örnekteki tür parametresi, kaynağı içeren derlemedeki sınıfın türüne ayarlanır.
resourceName
parametresi, varsayılan ad alanını içeren kaynağın tam yolu ile belirtilir.
<%@ 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>
Aşağıdaki kod örneği, hizmet verilecek kaynaklar için derlemeyi WebResourceAttribute işaretlemek üzere meta veri özniteliğinin program aracılığıyla nasıl uygulanacağını gösterir. Kullandığınız dile bağlı olarak varsayılan ad alanı veya Samples.AspNet.VB.Controls
olarak ayarlanmış Samples.AspNet.CS.Controls
bir sınıf kitaplığında aşağıdaki sınıfı derleyin.
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
Bu örnekte adlı Script_include.js
bir JavaScript dosyası gerekir. .js dosyası, nesnesini içeren derlemeye eklenmiş bir kaynaktır ClientScriptResourceLabel
. Visual Studio kullanıyorsanız, sınıf kitaplığı projesinin Özellikler penceresinde, betik dosyası seçildiğinde Derleme Eylemi'niEkli Kaynak olarak ayarlayın. Kitaplığı komut satırında derlüyorsanız kaynağı eklemek için /resource anahtarını kullanın.
function DoClick() {Form1.Message.value='Text from resource script.'}
Açıklamalar
yöntemi, GetWebResourceUrl bir derlemeye katıştırılmış bir kaynağa URL başvurusu döndürür. Döndürülen başvuru URL ile kodlanmış değil. Kaynaklar betik dosyaları, görüntüler veya herhangi bir statik dosya olabilir. Türü kaynağa erişecek nesneye göre belirtirsiniz.
Sayfaya kayıtlı bir Web kaynağı türü ve adıyla benzersiz olarak tanımlanır. Belirli bir tür ve ad çifti olan yalnızca bir kaynak sayfaya kaydedilebilir. Zaten kayıtlı olan bir kaynağı kaydetme girişimi, kayıtlı kaynağın bir kopyasını oluşturmaz.
GetWebResourceUrl yöntemi, derlemelere katıştırılmış kaynaklara erişmek için yöntemiyle RegisterClientScriptResource birlikte kullanılır. Uygulamalarda kaynakları kullanma hakkında daha fazla bilgi için bkz. ASP.NET Web Sayfası Kaynaklarına Genel Bakış.