Làm th? nào đ? b? nh? Cache trong ASP.NET b?ng cách s? d?ng Visual Basic.NET

D?ch tiêu đ? D?ch tiêu đ?
ID c?a bài: 811431 - Xem s?n ph?m mà bài này áp d?ng vào.
Bung t?t c? | Thu g?n t?t c?

? Trang này

TÓM T?T

Bài t?ng bư?c này mô t? cách đ? ki?m soát như th? nào ASP.NET lưu tr? các trang Web và các đ?i tư?ng d? li?u. B?i b? nh? đ?m, b?n tránh tái t?o thông tin khi b?n có nh?ng yêu c?u sau này. B? nh? đ?m là m?t k? thu?t quan tr?ng cho t?a nhà cao hi?u su?t và kh? năng m? r?ng máy ch? ?ng d?ng. Trong l?n đ?u tiên yêu c?u cho các trang, b?n có th? lưu tr? các đ?i tư?ng d? li?u, trang ho?c các ph?n c?a trang trong b? nh?. B?n có th? lưu tr? nh?ng m?c này trên máy ch? Web trên máy ch? ?y quy?n, ho?c trên tr?nh duy?t.

THÔNG TIN THÊM

ASP.NET cung c?p phương pháp thu?n ti?n đ? ki?m soát b? nh? đ?m. B?n có th? s? d?ng các @ OutputCache ch? th? đ? đi?u khi?n trang đ?u ra b? nh? đ?m trong ASP.NET. S? d?ng HttpCachePolicy l?p đ? lưu tr? các đ?i tư?ng tùy ?, ch?ng h?n như datasets, ph?c v? b? nh?. B?n có th? lưu b? nh? cache trong các ?ng d?ng như tr?nh duy?t c?a khách hàng, các máy ch? proxy, và Microsoft Internet Information Services (IIS). B?ng cách s? d?ng B? nh? cache-Control HTTP Header, b?n có th? đi?u khi?n b? nh? đ?m.

Cho thêm thông tin v? ASP.NET đ?u ra b? nh? đ?m, nh?p vào s? bài vi?t sau đây đ? Xem bài vi?t trong cơ s? ki?n th?c Microsoft:
308516Làm th? nào đ? ki?m soát trang đ?u ra b? nh? đ?m trong ASP.NET b?ng cách s? d?ng Visual Basic.NET

B? nh? cache ASP.Các trang m?ng

B?n có th? nh? cache b?ng cách s? d?ng các @ OutputCache ch? th?, ho?c l?p tr?nh thông qua m? b?ng cách s? d?ng Visual Basic .NET ho?c Visual C#.NET. Các @ OutputCache ch? th? ch?a m?t V? trí thu?c tính. Thu?c tính này s? xác đ?nh v? trí cho các cache kho?n m?c. B?n có th? ch? đ?nh m?t trong nh?ng đ?a đi?m sau:
  • B?t k? -Đi?u này lưu b? nh? cache c?a đ?u ra trong các khách hàng duy?t, trên các máy ch? proxy (ho?c b?t k? máy ch? khác) mà tham gia trong yêu c?u, ho?c trên máy ch? mà yêu c?u đư?c x? l?. Theo m?c đ?nh,B?t k? đư?c ch?n.
  • Máy khách -Đi?u này lưu lư?ng b? nh? cache trên các tr?nh duy?t c?a khách hàng.
  • H? lưu -Đi?u này lưu b? nh? cache c?a đ?u ra trong b?t k? thi?t b? có kh? năng b? nh? cache (khác v?i các máy ch? g?c) có tham gia vào theo yêu c?u.
  • Máy chủ -Đi?u này lưu b? nh? cache c?a s?n lư?ng ngày các máy ch? Web.
  • Không có -Đi?u này hóa ra đ?u ra b? nh? cache.

Sau đây là m?u m? cho các @ OutputCache ch? th? và tương đương chương tr?nh m?.
  • Đ? lưu tr? b? nh? cache c?a đ?u ra cho m?t th?i h?n quy đ?nh

    Cách ti?p c?n Transformations:
    <%@ OutputCache Duration="60" VaryByParam="None" %>

    Cách ti?p c?n chương tr?nh:
    Response.Cache.SetExpires(DateTime.Now.AddSeconds(60))
    Response.Cache.SetCacheability(HttpCacheability.Public)
  • Đ? lưu tr? b? nh? cache c?a đ?u ra vào máy s? d?ng tr?nh duy?t, nơi yêu c?u ngu?n g?c

    Cách ti?p c?n Transformations:
    <%@ OutputCache Duration="60" Location="Client" VaryByParam="None" %>

    Cách ti?p c?n chương tr?nh:
    Response.Cache.SetExpires(DateTime.Now.AddSeconds(60))
    Response.Cache.SetCacheability(HttpCacheability.Private)
    
  • Đ? lưu tr? b? nh? cache c?a đ?u ra vào b?t k? thi?t b? có kh? năng b? nh? cache HTTP 1.1 bao g?m các máy ch? proxy và khách hàng đư?c yêu c?u

    Cách ti?p c?n Transformations:
    <%@ OutputCache Duration="60" Location="Downstream" VaryByParam="None" %>

    Cách ti?p c?n chương tr?nh:
    Response.Cache.SetExpires(DateTime.Now.AddSeconds(60))
    Response.Cache.SetCacheability(HttpCacheability.Public)
    Response.Cache.SetNoServerCaching()
  • Đ? lưu tr? b? nh? cache c?a đ?u ra trên máy ch? Web

    Cách ti?p c?n Transformations:
    <%@ OutputCache Duration="60" Location="Server" VaryByParam="None" %>

    Cách ti?p c?n chương tr?nh:
    Response.Cache.SetExpires(DateTime.Now.AddSeconds(60))
    Response.Cache.SetCacheability(HttpCacheability.Server)
    
  • V?i b? nh? cache đ?u ra cho m?i yêu c?u HTTP đ?n v?i m?t thành ph? khác nhau

    Cách ti?p c?n Transformations:
    <%@ OutputCache duration="60" varybyparam="City" %>
    

    Cách ti?p c?n chương tr?nh:
    Response.Cache.SetExpires(DateTime.Now.AddSeconds(60))
    Response.Cache.SetCacheability(HttpCacheability.Public)
    Response.Cache.VaryByParams("City") = true
    
    Đ?i v?i các VaryByCustom thu?c tính, các VaryByHeader thu?c tính, và các VaryByParam trong các @ OutputCache ch? th?, các HttpCachePolicy l?p h?c cung c?p các VaryByHeaders b?t đ?ng s?n và các VaryByParams b?t đ?ng s?n, và các SetVaryByCustom phương pháp.

T?t máy khách và Proxy b? nh? đ?m

Đ? b?t t?t b? nh? cache c?a đ?u ra cho m?t ASP.NET Web trang lúc khách hàng v? trí và t?i v? trí ?y quy?n, thi?t l?p các V? trí giá tr? thu?c tính đ? không có, và sau đó thi?t l?p các VaryByParam giá tr? cho không có trong các @ OutputCache ch? th?. S? d?ng m?u m? sau đây đ? t?t máy khách và ?y quy?n b? nh? đ?m.
  • Cách ti?p c?n Transformations:
    <%@ OutputCache Location="None" VaryByParam="None" %>
  • Cách ti?p c?n chương tr?nh:
    Response.Cache.SetCacheability(HttpCacheability.NoCache)

B? đ?m ?n các đ?i tư?ng tùy ? trong b? nh? máy ch?

ASP.NET bao g?m m?t m?nh m?, d? dàng s? d?ng b? nh? đ?m ch? mà b?n có th? s? d?ng đ? lưu tr? các đ?i tư?ng c?n r?t nhi?u tài nguyên máy ch? đ? t?o ra trong b? nh?. Các Bộ đệm ẩn l?p h?c th?c hi?n phương pháp này. Trư?ng h?p đư?c tư nhân cho m?i ?ng d?ng và c? th?i gian đư?c g?n v?i ?ng d?ng tương ?ng. V?i b? nh? cache các đ?i tư?ng tùy ? trong ASP.Net b?ng cách s? d?ng các Bộ đệm ẩn l?p, h?y làm theo các bư?c sau:
  1. T?o ra m?t m?i ASP.?ng d?ng Web NET b?ng cách s? d?ng Visual Basic .NET.
  2. Theo m?c đ?nh, WebForm1.aspx đư?c t?o ra.
  3. Trong ch? đ? xem HTML c?a WebForm1.aspx, thay th? m? hi?n v?i m?u m? sau đây:
    <%@ Import Namespace="System.Data.SqlClient" %>
    <%@ Import Namespace="System.Data" %>
    <HTML>
    	<script language="vb" runat="server">
    
    		Private Sub Page_Load(ByVal sender As System.Object, ByVal e As System.EventArgs)
    			Dim Source As DataView
    
    		'Retrieve the DataView object from the Cache class. If it does not exist, add the DataView object to the Cache class.
    
    		Source = CType(Cache("MyDataSet"), DataView)
    
    		If Source Is Nothing Then
    
    			Dim myConnection As SqlConnection = New SqlConnection("Server=ServerName; database=Pubs; user id=UID; password=PWD;")
    			Dim myCommand As SqlDataAdapter = New SqlDataAdapter("select * from Authors", myConnection)
    			Dim ds As DataSet = New DataSet()
    			myCommand.Fill(ds, "Authors")
    
    			Source = New DataView(ds.Tables("Authors"))
    			Cache("MyDataSet") = Source
    			CacheMsg.Text = "Dataset created explicitly"
    			
    		Else
    			
    			CacheMsg.Text = "Dataset retrieved from cache"
    
    		End If
    
    		' Bind the DataView object to DataGrid. 
    		MyDataGrid.DataSource = Source
    		MyDataGrid.DataBind()
    
    		End Sub
    
    	</script>
    	<body>
    		<form method="GET" runat="server" ID="Form1">
    	      <h3><font face="Verdana">Caching Data</font></h3>
    			<ASP:DataGrid id="MyDataGrid" runat="server"
    			Width="700"
    			BackColor="#ccccff"
    			BorderColor="black"
    			ShowFooter="false"
    			CellPadding=3
    			CellSpacing="0"
    			Font-Name="Verdana"
    			Font-Size="8pt"
    			HeaderStyle-BackColor="#aaaad" />
    			<p>
    			<i><asp:label id="CacheMsg" runat="server"/></i>
    	    </form>
    		</P>
    	</body>
    </HTML>
    Chú ý Thay th? các giá tr? cho Tên máy chủ, UID, và PWD trong m?u m? cho các SqlConnection đ?i tư?ng v?i tên máy ch? SQL, ngư?i s? d?ng ID và m?t kh?u c?a b?n.
  4. Trên các G? l?i tr?nh đơn, nh?p vào B?t đ?u đ? ch?y các ?ng d?ng.

    Chú ý Khi b?n kh?i đ?ng l?i ?ng d?ng, các Lưu tr? đ?i tư?ng là ti?ng.

THAM KH?O

Cho thêm thông tin, b?m s? bài vi?t sau đ? xem bài vi?t trong các Cơ s? ki?n th?c Microsoft:
234067Làm th? nào đ? ngăn ch?n b? nh? đ?m trong Internet Explorer
247404 Làm th? nào đ? s?a đ?i các tiêu đ? HTTP Cache-Control khi b?n s? d?ng IIS
311006 Làm th? nào đ? ngăn ch?n Web b? nh? đ?m trong Windows 2000
247389 IIS: Làm th? nào đ? vô hi?u hóa b? nh? đ?m c?a c? th? MIME Types
313561 Làm th? nào đ? đ?t tiêu đ? HTTP cho n?i dung h?t h?n trong IIS


Đ? bi?t thêm chi ti?t, h?y truy c?p sau đây Web site c?a Microsoft:
http://msdn2.Microsoft.com/en-US/Library/xsbfdd8c (vs.71) .aspx


Thu?c tính

ID c?a bài: 811431 - L?n xem xét sau cùng: 28 Tháng Tám 2011 - Xem xét l?i: 2.0
Áp d?ng
  • Microsoft ASP.NET 1.1
  • Microsoft ASP.NET 1.0
  • Microsoft Visual Basic .NET 2003 Standard Edition
  • Microsoft Visual Basic .NET 2002 Standard Edition
T? khóa: 
kbhowtomaster kbdatabinding kbcaching kbwebforms kbinfo kbmt KB811431 KbMtvi
Máy d?ch
QUAN TRỌNG: Bài vi?t này đư?c d?ch b?ng ph?n m?m d?ch máy c?a Microsoft ch? không ph?i do con ngư?i d?ch. Microsoft cung c?p các bài vi?t do con ngư?i d?ch và c? các bài vi?t do máy d?ch đ? b?n có th? truy c?p vào t?t c? các bài vi?t trong Cơ s? Ki?n th?c c?a chúng tôi b?ng ngôn ng? c?a b?n. Tuy nhiên, bài vi?t do máy d?ch không ph?i lúc nào c?ng hoàn h?o. Lo?i bài vi?t này có th? ch?a các sai sót v? t? v?ng, cú pháp ho?c ng? pháp, gi?ng như m?t ngư?i nư?c ngoài có th? m?c sai sót khi nói ngôn ng? c?a b?n. Microsoft không ch?u trách nhi?m v? b?t k? s? thi?u chính xác, sai sót ho?c thi?t h?i nào do vi?c d?ch sai n?i dung ho?c do ho?t đ?ng s? d?ng c?a khách hàng gây ra. Microsoft c?ng thư?ng xuyên c?p nh?t ph?n m?m d?ch máy này.
Nh?p chu?t vào đây đ? xem b?n ti?ng Anh c?a bài vi?t này:811431

Cung cấp Phản hồi

 

Contact us for more help

Contact us for more help
Connect with Answer Desk for expert help.
Get more support from smallbusiness.support.microsoft.com