Substitution Kelas
Definisi
Penting
Beberapa informasi terkait produk prarilis yang dapat diubah secara signifikan sebelum dirilis. Microsoft tidak memberikan jaminan, tersirat maupun tersurat, sehubungan dengan informasi yang diberikan di sini.
Menentukan bagian pada halaman Web yang di-cache output yang dikecualikan dari penembolokan. Di lokasi ini, konten dinamis diambil dan diganti untuk Substitution kontrol.
public ref class Substitution : System::Web::UI::Control
public class Substitution : System.Web.UI.Control
type Substitution = class
inherit Control
Public Class Substitution
Inherits Control
- Warisan
Contoh
Contoh kode berikut menunjukkan cara menambahkan Substitution kontrol secara deklaratif ke halaman Web yang di-cache output. Saat halaman dimuat, tanggal dan waktu saat ini ditampilkan kepada pengguna dalam label. Bagian halaman ini di-cache dan diperbarui hanya setiap 60 detik.
Substitution Ketika kontrol dijalankan, ia memanggil GetCurrentDateTime
metode . String yang dikembalikan oleh GetCurrentDateTime
ditampilkan kepada pengguna. Bagian halaman ini tidak di-cache dan diperbarui setiap kali halaman disegarkan.
<%@ outputcache duration="60" varybyparam="none" %>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<script runat="server" language="C#">
void Page_Load(object sender, System.EventArgs e)
{
// Display the current date and time in the label.
// Output caching applies to this section of the page.
CachedDateLabel.Text = DateTime.Now.ToString();
}
// The Substitution control calls this method to retrieve
// the current date and time. This section of the page
// is exempt from output caching.
public static string GetCurrentDateTime (HttpContext context)
{
return DateTime.Now.ToString ();
}
</script>
<html xmlns="http://www.w3.org/1999/xhtml" >
<head runat="server">
<title>Substitution Class Example</title>
</head>
<body>
<form id="form1" runat="server">
<h3>Substitution Class Example</h3>
<p>This section of the page is not cached:</p>
<asp:substitution id="Substitution1"
methodname="GetCurrentDateTime"
runat="Server">
</asp:substitution>
<br />
<p>This section of the page is cached:</p>
<asp:label id="CachedDateLabel"
runat="Server">
</asp:label>
<br /><br />
<asp:button id="RefreshButton"
text="Refresh Page"
runat="Server">
</asp:button>
</form>
</body>
</html>
<%@ outputcache duration="60" varybyparam="none" %>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<script runat="server" language="VB">
Sub Page_Load(ByVal sender As Object, ByVal e As System.EventArgs)
' Display the current date and time in the label.
' Output caching applies to this section of the page.
CachedDateLabel.Text = DateTime.Now.ToString()
End Sub
' The Substitution control calls this method to retrieve
' the current date and time. This section of the page
' is exempt from output caching.
Shared Function GetCurrentDateTime(ByVal context As HttpContext) As String
Return DateTime.Now.ToString()
End Function
</script>
<html xmlns="http://www.w3.org/1999/xhtml" >
<head id="Head1" runat="server">
<title>Substitution Class Example</title>
</head>
<body>
<form id="Form1" runat="server">
<h3>Substitution Class Example</h3>
<p>This section of the page is not cached:</p>
<asp:substitution id="Substitution1"
methodname="GetCurrentDateTime"
runat="Server">
</asp:substitution>
<br />
<p>This section of the page is cached:</p>
<asp:label id="CachedDateLabel"
runat="Server">
</asp:label>
<br /><br />
<asp:button id="RefreshButton"
text="Refresh Page"
runat="Server">
</asp:button>
</form>
</body>
</html>
Keterangan
Dalam topik ini:
Pengantar
Substitution Gunakan kontrol untuk menentukan bagian pada halaman Web yang di-cache output tempat Anda ingin konten dinamis diganti untuk kontrol. Kontrol ini Substitution menawarkan solusi yang disederhanakan untuk penembolokan halaman parsial untuk halaman di mana sebagian besar konten di-cache. Anda dapat melakukan output-cache di seluruh halaman, lalu menggunakan Substitution kontrol untuk menentukan bagian halaman yang dikecualikan dari penembolokan. Wilayah yang di-cache hanya dijalankan sekali dan diputar ulang dari cache hingga entri cache kedaluwarsa atau dihapus menyeluruh. Wilayah dinamis dijalankan setiap kali halaman diminta. Model penembolokan ini menyederhanakan kode untuk halaman yang terutama statis, karena Anda tidak perlu merangkum bagian untuk cache di kontrol pengguna Web. Misalnya, model penembolokan ini berguna dalam skenario di mana Anda memiliki halaman yang berisi konten statis, seperti berita, dan AdRotator kontrol yang menampilkan iklan. Berita tidak berubah, yang berarti bahwa mereka dapat di-cache. Namun, setiap kali pengguna meminta halaman, Anda ingin menampilkan iklan baru. Kontrol secara AdRotator langsung mendukung substitusi pasca-cache dan merender iklan baru setiap kali halaman diposting kembali, terlepas dari apakah halaman tersebut di-cache.
Catatan
Anda dapat menempatkan Substitution kontrol dalam kontrol pengguna yang terkandung dalam halaman yang di-cache. Namun, Anda tidak dapat menempatkan Substitution kontrol dalam kontrol pengguna yang di-cache output.
Substitution Saat kontrol dijalankan, kontrol memanggil metode yang mengembalikan string. String yang dikembalikan metode adalah konten untuk ditampilkan pada halaman di lokasi Substitution kontrol. MethodName Gunakan properti untuk menentukan nama metode panggilan balik yang akan dipanggil saat Substitution kontrol dijalankan. Metode panggilan balik yang Anda tentukan harus merupakan metode statis pada halaman atau kontrol pengguna yang berisi Substitution kontrol. Tanda tangan untuk metode panggilan balik harus cocok dengan tanda tangan untuk HttpResponseSubstitutionCallback delegasi yang mengambil HttpContext parameter dan mengembalikan string.
Untuk memanipulasi cache output untuk halaman, Anda dapat menggunakan direktif @ OutputCache , HttpCachePolicy kelas, atau Cache properti . Untuk informasi selengkapnya tentang halaman penembolokan, lihat Penembolokan Halaman ASP.NET dan Bagian Penembolokan halaman ASP.NET.
Sebagai alternatif untuk menggunakan Substitution kontrol, Anda juga bisa mendapatkan perilaku penembolokan substitusi menggunakan HttpResponseSubstitutionCallback delegasi. Selain itu, Anda bisa mendapatkan perilaku penembolokan substitusi pada kontrol, seperti AdRotator kontrol, yang secara langsung mendukung fitur ini. Untuk informasi selengkapnya, lihat Memperbarui Bagian Halaman Yang Di-cache secara Dinamis.
Sintaks Deklaratif
<asp:Substitution
EnableTheming="True|False"
EnableViewState="True|False"
ID="string"
MethodName="string"
OnDataBinding="DataBinding event handler"
OnDisposed="Disposed event handler"
OnInit="Init event handler"
OnLoad="Load event handler"
OnPreRender="PreRender event handler"
OnUnload="Unload event handler"
runat="server"
SkinID="string"
Visible="True|False"
/>
Konstruktor
Substitution() |
Menginisialisasi instans baru kelas Substitution. |
Properti
Adapter |
Mendapatkan adaptor khusus browser untuk kontrol. (Diperoleh dari Control) |
AppRelativeTemplateSourceDirectory |
Mendapatkan atau mengatur direktori virtual relatif aplikasi dari Page objek atau UserControl yang berisi kontrol ini. (Diperoleh dari Control) |
BindingContainer |
Mendapatkan kontrol yang berisi pengikatan data kontrol ini. (Diperoleh dari Control) |
ChildControlsCreated |
Mendapatkan nilai yang menunjukkan apakah kontrol anak kontrol server telah dibuat. (Diperoleh dari Control) |
ClientID |
Mendapatkan ID kontrol untuk markup HTML yang dihasilkan oleh ASP.NET. (Diperoleh dari Control) |
ClientIDMode |
Mendapatkan atau mengatur algoritma yang digunakan untuk menghasilkan nilai ClientID properti. (Diperoleh dari Control) |
ClientIDSeparator |
Mendapatkan nilai karakter yang mewakili karakter pemisah yang digunakan dalam ClientID properti . (Diperoleh dari Control) |
Context |
Mendapatkan objek yang HttpContext terkait dengan kontrol server untuk permintaan Web saat ini. (Diperoleh dari Control) |
Controls |
ControlCollection Mendapatkan objek yang mewakili kontrol anak untuk kontrol server tertentu dalam hierarki UI. (Diperoleh dari Control) |
DataItemContainer |
Mendapatkan referensi ke kontainer penamaan jika kontainer penamaan IDataItemContainermengimplementasikan . (Diperoleh dari Control) |
DataKeysContainer |
Mendapatkan referensi ke kontainer penamaan jika kontainer penamaan IDataKeysControlmengimplementasikan . (Diperoleh dari Control) |
DesignMode |
Mendapatkan nilai yang menunjukkan apakah kontrol sedang digunakan pada permukaan desain. (Diperoleh dari Control) |
EnableTheming |
Mendapatkan atau menetapkan nilai yang menunjukkan apakah tema berlaku untuk kontrol ini. (Diperoleh dari Control) |
EnableViewState |
Mendapatkan atau menetapkan nilai yang menunjukkan apakah kontrol server mempertahankan status tampilannya, dan status tampilan kontrol anak apa pun yang dikandungnya, ke klien yang meminta. (Diperoleh dari Control) |
Events |
Mendapatkan daftar delegasi penanganan aktivitas untuk kontrol. Properti ini bersifat hanya baca. (Diperoleh dari Control) |
HasChildViewState |
Mendapatkan nilai yang menunjukkan apakah kontrol turunan kontrol server saat ini memiliki pengaturan status tampilan yang disimpan. (Diperoleh dari Control) |
ID |
Mendapatkan atau mengatur pengidentifikasi terprogram yang ditetapkan ke kontrol server. (Diperoleh dari Control) |
IdSeparator |
Mendapatkan karakter yang digunakan untuk memisahkan pengidentifikasi kontrol. (Diperoleh dari Control) |
IsChildControlStateCleared |
Mendapatkan nilai yang menunjukkan apakah kontrol yang terkandung dalam kontrol ini memiliki status kontrol. (Diperoleh dari Control) |
IsTrackingViewState |
Mendapatkan nilai yang menunjukkan apakah kontrol server menyimpan perubahan pada status tampilannya. (Diperoleh dari Control) |
IsViewStateEnabled |
Mendapatkan nilai yang menunjukkan apakah status tampilan diaktifkan untuk kontrol ini. (Diperoleh dari Control) |
LoadViewStateByID |
Mendapatkan nilai yang menunjukkan apakah kontrol berpartisipasi dalam memuat status tampilannya dengan ID bukan indeks. (Diperoleh dari Control) |
MethodName |
Mendapatkan atau mengatur nama metode panggilan balik yang akan dipanggil saat Substitution kontrol dijalankan. |
NamingContainer |
Mendapatkan referensi ke kontainer penamaan kontrol server, yang membuat namespace unik untuk membedakan antara kontrol server dengan nilai properti yang sama ID . (Diperoleh dari Control) |
Page |
Mendapatkan referensi ke Page instans yang berisi kontrol server. (Diperoleh dari Control) |
Parent |
Mendapatkan referensi ke kontrol induk kontrol server dalam hierarki kontrol halaman. (Diperoleh dari Control) |
RenderingCompatibility |
Mendapatkan nilai yang menentukan versi ASP.NET yang dirender HTML akan kompatibel. (Diperoleh dari Control) |
Site |
Mendapatkan informasi tentang kontainer yang menghosting kontrol saat ini saat dirender pada permukaan desain. (Diperoleh dari Control) |
SkinID |
Mendapatkan atau mengatur kulit untuk diterapkan ke kontrol. (Diperoleh dari Control) |
TemplateControl |
Mendapatkan atau mengatur referensi ke templat yang berisi kontrol ini. (Diperoleh dari Control) |
TemplateSourceDirectory |
Mendapatkan direktori Page virtual dari atau UserControl yang berisi kontrol server saat ini. (Diperoleh dari Control) |
UniqueID |
Mendapatkan pengidentifikasi unik yang memenuhi syarat secara hierarkis untuk kontrol server. (Diperoleh dari Control) |
ValidateRequestMode |
Mendapatkan atau menetapkan nilai yang menunjukkan apakah kontrol memeriksa input klien dari browser untuk nilai yang berpotensi berbahaya. (Diperoleh dari Control) |
ViewState |
Mendapatkan kamus informasi status yang memungkinkan Anda menyimpan dan memulihkan status tampilan kontrol server di beberapa permintaan untuk halaman yang sama. (Diperoleh dari Control) |
ViewStateIgnoresCase |
Mendapatkan nilai yang menunjukkan apakah StateBag objek tidak peka huruf besar/kecil. (Diperoleh dari Control) |
ViewStateMode |
Mendapatkan atau mengatur mode view-state kontrol ini. (Diperoleh dari Control) |
Visible |
Mendapatkan atau menetapkan nilai yang menunjukkan apakah kontrol server dirender sebagai UI di halaman. (Diperoleh dari Control) |
Metode
AddedControl(Control, Int32) |
Dipanggil setelah kontrol anak ditambahkan ke Controls koleksi Control objek. (Diperoleh dari Control) |
AddParsedSubObject(Object) |
Memberi tahu kontrol server bahwa elemen, BAIK XML atau HTML, diurai, dan menambahkan elemen ke objek kontrol ControlCollection server. (Diperoleh dari Control) |
ApplyStyleSheetSkin(Page) |
Menerapkan properti gaya yang ditentukan dalam lembar gaya halaman ke kontrol. (Diperoleh dari Control) |
BeginRenderTracing(TextWriter, Object) |
Memulai pelacakan waktu desain dari data penyajian. (Diperoleh dari Control) |
BuildProfileTree(String, Boolean) |
Mengumpulkan informasi tentang kontrol server dan mengirimkannya ke properti yang Trace akan ditampilkan saat pelacakan diaktifkan untuk halaman. (Diperoleh dari Control) |
ClearCachedClientID() |
Mengatur nilai yang di-cache ClientID ke |
ClearChildControlState() |
Menghapus informasi status kontrol untuk kontrol turunan kontrol server. (Diperoleh dari Control) |
ClearChildState() |
Menghapus informasi status tampilan dan status kontrol untuk semua kontrol turunan kontrol server. (Diperoleh dari Control) |
ClearChildViewState() |
Menghapus informasi status tampilan untuk semua kontrol turunan kontrol server. (Diperoleh dari Control) |
ClearEffectiveClientIDMode() |
Mengatur properti instans ClientIDMode kontrol saat ini dan kontrol turunan apa pun ke Inherit. (Diperoleh dari Control) |
CreateChildControls() |
Dipanggil oleh kerangka kerja halaman ASP.NET untuk memberi tahu kontrol server yang menggunakan implementasi berbasis komposisi untuk membuat kontrol anak apa pun yang dikandungnya sebagai persiapan untuk memposting kembali atau merender. (Diperoleh dari Control) |
CreateControlCollection() |
Mengembalikan EmptyControlCollection objek, menunjukkan bahwa Substitution kontrol tidak mendukung kontrol turunan. |
DataBind() |
Mengikat sumber data ke kontrol server yang dipanggil dan semua kontrol turunannya. (Diperoleh dari Control) |
DataBind(Boolean) |
Mengikat sumber data ke kontrol server yang dipanggil dan semua kontrol turunannya dengan opsi untuk menaikkan DataBinding peristiwa. (Diperoleh dari Control) |
DataBindChildren() |
Mengikat sumber data ke kontrol anak kontrol server. (Diperoleh dari Control) |
Dispose() |
Memungkinkan kontrol server untuk melakukan pembersihan akhir sebelum dirilis dari memori. (Diperoleh dari Control) |
EndRenderTracing(TextWriter, Object) |
Mengakhiri pelacakan waktu desain data penyajian. (Diperoleh dari Control) |
EnsureChildControls() |
Menentukan apakah kontrol server berisi kontrol anak. Jika tidak, itu membuat kontrol anak. (Diperoleh dari Control) |
EnsureID() |
Membuat pengidentifikasi untuk kontrol yang tidak memiliki pengidentifikasi yang ditetapkan. (Diperoleh dari Control) |
Equals(Object) |
Menentukan apakah objek yang ditentukan sama dengan objek saat ini. (Diperoleh dari Object) |
FindControl(String) |
Mencari kontainer penamaan saat ini untuk kontrol server dengan parameter yang ditentukan |
FindControl(String, Int32) |
Mencari kontainer penamaan saat ini untuk kontrol server dengan yang ditentukan |
Focus() |
Mengatur fokus input ke kontrol. (Diperoleh dari Control) |
GetDesignModeState() |
Mendapatkan data waktu desain untuk kontrol. (Diperoleh dari Control) |
GetHashCode() |
Berfungsi sebagai fungsi hash default. (Diperoleh dari Object) |
GetRouteUrl(Object) |
Mendapatkan URL yang sesuai dengan sekumpulan parameter rute. (Diperoleh dari Control) |
GetRouteUrl(RouteValueDictionary) |
Mendapatkan URL yang sesuai dengan sekumpulan parameter rute. (Diperoleh dari Control) |
GetRouteUrl(String, Object) |
Mendapatkan URL yang sesuai dengan sekumpulan parameter rute dan nama rute. (Diperoleh dari Control) |
GetRouteUrl(String, RouteValueDictionary) |
Mendapatkan URL yang sesuai dengan sekumpulan parameter rute dan nama rute. (Diperoleh dari Control) |
GetType() |
Mendapatkan instans Type saat ini. (Diperoleh dari Object) |
GetUniqueIDRelativeTo(Control) |
Mengembalikan bagian awalan dari UniqueID properti kontrol yang ditentukan. (Diperoleh dari Control) |
HasControls() |
Menentukan apakah kontrol server berisi kontrol anak apa pun. (Diperoleh dari Control) |
HasEvents() |
Mengembalikan nilai yang menunjukkan apakah peristiwa terdaftar untuk kontrol atau kontrol turunan apa pun. (Diperoleh dari Control) |
IsLiteralContent() |
Menentukan apakah kontrol server hanya menyimpan konten harfiah. (Diperoleh dari Control) |
LoadControlState(Object) |
Memulihkan informasi status kontrol dari permintaan halaman sebelumnya yang disimpan oleh SaveControlState() metode . (Diperoleh dari Control) |
LoadViewState(Object) |
Memulihkan informasi status tampilan dari permintaan halaman sebelumnya yang disimpan oleh SaveViewState() metode . (Diperoleh dari Control) |
MapPathSecure(String) |
Mengambil jalur fisik tempat jalur virtual, baik absolut atau relatif, dipetakan. (Diperoleh dari Control) |
MemberwiseClone() |
Membuat salinan dangkal dari yang saat ini Object. (Diperoleh dari Object) |
OnBubbleEvent(Object, EventArgs) |
Menentukan apakah peristiwa untuk kontrol server diteruskan ke hierarki kontrol server UI halaman. (Diperoleh dari Control) |
OnDataBinding(EventArgs) |
Memunculkan kejadian DataBinding. (Diperoleh dari Control) |
OnInit(EventArgs) |
Memunculkan kejadian Init. (Diperoleh dari Control) |
OnLoad(EventArgs) |
Memunculkan kejadian Load. (Diperoleh dari Control) |
OnPreRender(EventArgs) |
Memunculkan kejadian PreRender. |
OnUnload(EventArgs) |
Memunculkan kejadian Unload. (Diperoleh dari Control) |
OpenFile(String) |
Stream Menggunakan untuk membaca file. (Diperoleh dari Control) |
RaiseBubbleEvent(Object, EventArgs) |
Menetapkan sumber peristiwa apa pun dan informasinya ke induk kontrol. (Diperoleh dari Control) |
RemovedControl(Control) |
Dipanggil setelah kontrol anak dihapus dari Controls koleksi Control objek. (Diperoleh dari Control) |
Render(HtmlTextWriter) |
Mengirim konten kontrol server ke objek yang disediakan HtmlTextWriter , yang menulis konten yang akan dirender pada klien. |
RenderChildren(HtmlTextWriter) |
Mengeluarkan konten turunan kontrol server ke objek yang disediakan HtmlTextWriter , yang menulis konten yang akan dirender pada klien. (Diperoleh dari Control) |
RenderControl(HtmlTextWriter) |
Output konten kontrol server ke objek yang disediakan HtmlTextWriter dan menyimpan informasi pelacakan tentang kontrol jika pelacakan diaktifkan. (Diperoleh dari Control) |
RenderControl(HtmlTextWriter, ControlAdapter) |
Output konten kontrol server ke objek yang disediakan HtmlTextWriter menggunakan objek yang disediakan ControlAdapter . (Diperoleh dari Control) |
ResolveAdapter() |
Mendapatkan adaptor kontrol yang bertanggung jawab untuk merender kontrol yang ditentukan. (Diperoleh dari Control) |
ResolveClientUrl(String) |
Mendapatkan URL yang dapat digunakan oleh browser. (Diperoleh dari Control) |
ResolveUrl(String) |
Mengonversi URL menjadi URL yang dapat digunakan pada klien yang meminta. (Diperoleh dari Control) |
SaveControlState() |
Menyimpan perubahan status kontrol server yang telah terjadi sejak halaman diposting kembali ke server. (Diperoleh dari Control) |
SaveViewState() |
Menyimpan perubahan status tampilan kontrol server yang telah terjadi sejak halaman diposting kembali ke server. (Diperoleh dari Control) |
SetDesignModeState(IDictionary) |
Mengatur data waktu desain untuk kontrol. (Diperoleh dari Control) |
SetRenderMethodDelegate(RenderMethod) |
Menetapkan delegasi penanganan aktivitas untuk merender kontrol server dan kontennya ke dalam kontrol induknya. (Diperoleh dari Control) |
SetTraceData(Object, Object) |
Mengatur data pelacakan untuk pelacakan waktu desain data penyajian, menggunakan kunci data pelacakan dan nilai data pelacakan. (Diperoleh dari Control) |
SetTraceData(Object, Object, Object) |
Mengatur data pelacakan untuk pelacakan waktu desain data penyajian, menggunakan objek yang dilacak, kunci data pelacakan, dan nilai data pelacakan. (Diperoleh dari Control) |
ToString() |
Mengembalikan string yang mewakili objek saat ini. (Diperoleh dari Object) |
TrackViewState() |
Menyebabkan pelacakan perubahan status tampilan pada kontrol server sehingga dapat disimpan di objek kontrol StateBag server. Objek ini dapat diakses melalui ViewState properti . (Diperoleh dari Control) |
Acara
DataBinding |
Terjadi ketika kontrol server mengikat ke sumber data. (Diperoleh dari Control) |
Disposed |
Terjadi ketika kontrol server dirilis dari memori, yang merupakan tahap terakhir dari siklus hidup kontrol server ketika halaman ASP.NET diminta. (Diperoleh dari Control) |
Init |
Terjadi ketika kontrol server diinisialisasi, yang merupakan langkah pertama dalam siklus hidupnya. (Diperoleh dari Control) |
Load |
Terjadi ketika kontrol server dimuat ke Page dalam objek. (Diperoleh dari Control) |
PreRender |
Terjadi setelah Control objek dimuat tetapi sebelum penyajian. (Diperoleh dari Control) |
Unload |
Terjadi ketika kontrol server dibongkar dari memori. (Diperoleh dari Control) |
Implementasi Antarmuka Eksplisit
Metode Ekstensi
FindDataSourceControl(Control) |
Mengembalikan sumber data yang terkait dengan kontrol data untuk kontrol yang ditentukan. |
FindFieldTemplate(Control, String) |
Mengembalikan templat bidang untuk kolom yang ditentukan dalam kontainer penamaan kontrol yang ditentukan. |
FindMetaTable(Control) |
Mengembalikan objek metatable untuk kontrol data yang berisi. |