Là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 C#.NET

D?ch tiêu đ? D?ch tiêu đ?
ID c?a bài: 308375 - 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 vi?t này ch?ng t? làm th? nào đ? s? d?ng các @ OutputCache ch? th? đ? đi?u khi?n trang đ?u ra b? nh? đ?m trong ASP.NET v?i h?nh ?nh C#.NET. B?n có th? s? d?ng k? thu?t này đ? b? nh? cache c?a trang web c?a b?n thư?ng xuyên nh?t truy c?p các trang web, mà có th? tăng đáng k? thông lư?ng c?a máy ch? Web c?a b?n. Thông lư?ng thư?ng đư?c đo theo yêu c?u / giây. M?c dù các m?u M? trong bài vi?t này ch?ng t? làm th? nào đ? s? d?ng các Th?i gian th?c hi?nVaryByParam thu?c tính, bài báo c?ng bao g?m m?t mô t? ng?n g?n v? các phương pháp ti?p c?n b?n có th? s? d?ng v?i các @ OutputCache ch? th?.

LƯU ?: Nó không ph?i là ? đ?nh c?a bài vi?t này mô t? t?t c? các @ OutputCache thu?c tính ch? th? và s? d?ng c?a h? có th? chi ti?t. Đ? bi?t thêm thông tin, tham kh?o các Tài li?u tham kh?okeá tieáp.


Yêu c?u

  • Microsoft Windows 2000 ho?c Windows XP
  • Microsoft.NET Framework
  • Microsoft Internet thông tin máy ch? (IIS)
  • Microsoft ASP.NET

Gi?i thi?u đ? @ OutputCache ch? th?

S? d?ng các @ OutputCache ch? th? đ? đi?u khi?n trang đ?u ra b? nh? đ?m, b?n ch? c?n thêm các ch? th? đ? đ?u trang. Các Page.InitOutputCache phương pháp d?ch ch? th? thành HttpCachePolicy phương pháp l?p.

Các @ OutputCache ch? th? bao g?m các thu?c tính và cài đ?t sau đây:
  • Th?i gian th?c hi?n: Thu?c tính này xác đ?nh bao lâu m?t m?c t? ch?c trong b? nh? cache. Giá tr? cho Th?i gian th?c hi?n đư?c li?t kê trong vài giây.
  • VaryByParam: Thu?c tính này s? xác đ?nh b? đ?m ?n m?i c?a Có đư?c ho?c Đăng bài các tham s?. Ví d?, n?u m?t QueryString thay đ?i tên testVal đư?c thi?t l?p cho các VaryByParam thu?c tính, m?i yêu c?u trang có ch?a m?t giá tr? khác nhau chotestVal đư?c lưu tr? trong m?t trang riêng bi?t. Các m? sau đây minh ho? các cú pháp cho các VaryByParam thu?c tính:
    <%@ OutputCache Duration="Seconds" VaryByParam="testVal"%>
    						
    LƯU ?: B?n có th? ch? đ?nh m?t d?u hoa th? (*) đ? cho t?t c? các phiên b?n khác nhau m?t hàng đư?c lưu tr?. Ngoài ra, b?n có th? ch? đ?nh "không" N?u ch? có m?t phiên b?n c?a m?t lưu tr? m?c t?n t?i.
  • V? trí: Thu?c tính này s? xác đ?nh nơi m?t hàng đó là đ? đư?c lưu tr?. B?n có th? ch? đ?nh nh?ng đ?a đi?m sau:
    • B?t k?
    • Khách hàng
    • H? lưu
    • H? ph?c v?
    • Không có

    Các m? sau đây minh ho? cú pháp cho các V? trí thu?c tính:
    <%@ OutputCache Duration="Seconds" Location="Client" %>
    					
  • VaryByCustom: Thu?c tính này ch?a các thi?t l?p m?c đ?nh Tr?nh duy?t, có ngh?a là m?t th? hi?n khác nhau c?a m?t m?c là cache cho m?i phiên b?n tr?nh duy?t yêu c?u nó. Ví d?, c? hai Internet c?a Microsoft Explorer 5 và Internet Explorer 5.5 yêu c?u các m?c. Khi VaryByCustom đư?c thi?t l?p đ? Tr?nh duy?t, m?t b? nh? cache entry t?n t?i cho m?i phiên b?n tr?nh duy?t. B?n có th? không cung c?p m?t chu?i đ? ki?m soát các b? nh? đ?m cho k?ch b?n tu? ch?nh khác. Chu?i không có b?t k? có ngh?a là tr? khi b?n cung c?p m? đ? ghi đè các HttpApplication.GetVaryByCustomString phương pháp trong các t?p tin Global.asax.

    Đo?n m? sau minh ho? cú pháp cho các VaryByCustom thu?c tính:
    <%@ OutputCache Duration="Seconds" VaryByCustom="string" %>
    					
  • VaryByHeader: Thu?c tính này cho phép b?n xác đ?nh m?t tiêu đ? HTTP c? th? giá tr? như là tiêu chu?n cho vi?c xác đ?nh b? nh? cache khác nhau m?c. Đo?n m? sau minh ho? cú pháp cho các VaryByHeader thu?c tính:
    <%@ OutputCache Duration="60" VaryByHeader="Accept-Language" %>
    					

Các bư?c đ? t?o ra m?u @ OutputCache th?i gian

Các bư?c sau đây ch?ng minh làm th? nào đ? s? d?ng các Th?i gian th?c hi?n thu?c tính cho trang đ?u ra b? nh? đ?m đ? xác đ?nh bao lâu đ? nh? cache m?t kho?n m?c.
  1. T?o ra m?t m?i Visual Basic ASP.D? án ?ng d?ng Web NET như sau:
    1. M? ph?ng thu tr?c quan.NET.
    2. T? các T?p tin tr?nh đơn, đi?m đ?n M?i, sau đó b?m D? án.
    3. Trong các D? án m?i h?p tho?i h?p, b?m vào Visual C# các d? án dư?i Các lo?i d? án, và nh?p vào ASP.NET Web ?ng d?ng dư?i M?u. Trong các Tên h?p văn b?n, lo?i OutputCacheDemo, và sau đó Nh?p vào Ok.
  2. T?o m?t trang .aspx m?i trong Visual Studio.NET như sau:
    1. Trong gi?i pháp Explorer, b?m chu?t ph?i vào nút d? án Nh?p vào Thêm, sau đó b?m Thêm m?u Web.
    2. Trong các Tên h?p văn b?n, lo?i OutputCacheDuration.aspx, sau đó b?m M?.
  3. Xóa b? các m? m?c đ?nh mà Visual Studio.NET cho bi?t thêm vào các Trang.
  4. H?y ch?n m? sau đây, b?m chu?t ph?i vào m?, và sau đó b?m B?n sao. Trong ph?ng thu tr?c quan.NET, nh?p Dán dư?i d?ng HTML trên các Ch?nh s?a Menu đ? dán m? vào trang .aspx:
    <%@ OutputCache Duration="20" VaryByParam="none"%>
    <HTML>
       <HEAD>
       <script language="C#" runat="server">
       void Page_Load(object sender, EventArgs e) 
       {	
          Label1.Text = "Time: " + DateTime.Now.TimeOfDay.ToString();
       }
       </script>
       </HEAD>
       <body>
          <STRONG>@ OutputCache Duration Sample</STRONG>
          <hr>
          <br>
          <asp:Label id="Label1" runat="server">Label</asp:Label>
          <br>
       </body>
    </HTML>
    					
  5. T? các T?p tin tr?nh đơn, nh?p vào Lưu OutputCacheDuration.aspx đ? lưu trang.
  6. T? các Xây d?ng Nh?p vào tr?nh đơn trong s? tích h?p phát tri?n môi trư?ng (IDE), Xây d?ng.
  7. Đ? ch?y vào m?u, b?m chu?t ph?i vào OutputCacheDuration.aspx trong gi?i pháp Explorer, và sau đó nh?p vào Xem trong tr?nh duy?t.
  8. Sau khi trang xu?t hi?n trong tr?nh duy?t, h?y lưu ? c?a các th?i gian s? xu?t hi?n trong nh?n.
  9. Làm m?i trang trong tr?nh duy?t. Chú ? r?ng gi? là gi?ng như nó đ? trư?c đó. N?u b?n làm m?i trang sau 20 giây thi?t l?p th?i gian h?t h?n, m?t phiên b?n m?i đư?c cache c?a trang là hi?n th?.

    LƯU ?: N?u b?n đang xem trang trong m?t tr?nh duy?t bên ngoài, b?n có th? b?m phím F5 đ? làm m?i trang. N?u b?n đang xem trang trong th? giác Ph?ng thu.Nh?p chu?t ph?i NET IDE bên trong tr?nh duy?t, b?n có th? vào trang và sau đó nh?p vào Làm tươi đ? làm m?i trang.

Các bư?c đ? t?o ra m?u @ OutputCache VaryByParam

Các bư?c sau đây ch?ng minh làm th? nào đ? s? d?ng các VaryByParam thu?c tính cho trang đ?u ra b? nh? đ?m cho phép khác nhau lưu tr? các phiên b?n c?a m?t trang đ? t?n t?i d?a trên giá tr? c?a m?t s? c?a nó QueryString các giá tr? bi?n.
  1. T?o m?t trang .aspx m?i trong Visual Studio.NET như sau:
    1. Trong gi?i pháp Explorer, b?m chu?t ph?i vào nút d? án Nh?p vào Thêm, sau đó b?m Thêm m?u Web.
    2. Trong các Tên h?p văn b?n, lo?i OutputCacheVaryByParam.aspx, sau đó b?m M?.
  2. Xóa b? các m? m?c đ?nh mà Visual Studio.NET cho bi?t thêm vào các Trang theo m?c đ?nh.
  3. H?y ch?n m? sau đây, b?m chu?t ph?i vào m?, và sau đó b?m B?n sao. Trong ph?ng thu tr?c quan.NET, nh?p Dán dư?i d?ng HTML trên các Ch?nh s?a Menu đ? dán m? vào trang .aspx:
    <%@ OutputCache Duration="20" VaryByParam="testVal"%>
    <HTML>
       <HEAD>
          <script language="C#" runat="server">
       void Page_Load(object sender, EventArgs e) 
       {	
          Label1.Text = "Time: " + DateTime.Now.TimeOfDay.ToString();
       }
       </script>
       </HEAD>
       <body>
          <P>
             <STRONG>@ OutputCache VaryByParam Sample</STRONG>
          </P>
          <P>
             <hr>
          </P>
          <P>
             <br>
             <asp:Label id="Label1" runat="server"></asp:Label>
             <br>
             <hr>
             <a href=http://yourservername/OutputCacheDemo/OutputCacheVaryByParam.aspx?testVal=123">testVal(123)</a>
             <br>
             <a href=http://yourservername/OutputCacheDemo/OutputCacheVaryByParam.aspx?testVal=345">testVal(345)</a>
          </P>
       </body>
    </HTML>
    						
    LƯU ?: B?n ph?i s?a đ?i các siêu liên k?t hai trong m? trư?c vào ph?n ánh tên c?a máy ch? Web c?a b?n. Ngoài ra, b?n có th? nh?n th?y r?ng các VaryByParam thu?c tính đư?c đ?t thành khác nhau, d?a trên giá tr? c?a các QueryString bi?n testVal. Đi?u này làm cho trang đ?u ra ph?i đư?c lưu tr? cho m?i trư?ng h?p trong mà các QueryString giá tr? bi?n cho testVal là như nhau.
  4. T? các T?p tin tr?nh đơn, nh?p vào Lưu OutputCacheVaryByParam.aspx đ? lưu trang.
  5. T? các Xây d?ng Nh?p vào tr?nh đơn trong IDE, Xây d?ng.
  6. Đ? ch?y vào m?u, b?m chu?t ph?i vào OutputCacheVaryByParam.aspx trong gi?i pháp Explorer, và sau đó nh?p vào Xem trong tr?nh duy?t.
  7. Sau khi trang xu?t hi?n trong tr?nh duy?t, b?m testVal(123). Đi?u này làm cho tr?nh duy?t đ? tr?nh duy?t quay l?i trang, nhưng v?i các QueryString bi?n testVal thi?t l?p đ? "123". H?y lưu ? th?i gian s? xu?t hi?n.
  8. Nh?p vào testVal(123) m?t l?n n?a. Chú ? r?ng đó là gi?ng như nó đ? trư?c đó. Các s?n lư?ng trang đ? đư?c lưu tr? d?a trên các testVal giá tr? bi?n.
  9. Nh?p vào testVal(345). Chú ? r?ng m?t th?i gian m?i s? xu?t hi?n trên trang.
  10. Nh?p vào testVal(345) m?t l?n n?a. Thông báo r?ng s?n lư?ng trang trư?c đó là cache và hi?n th? trong tr?nh duy?t.
  11. Nh?p vào testVal(123) ñeå trôû veà sơ th?m. Thông báo r?ng trang khác nhau đ?u ra b? nh? cache Phiên b?n xu?t hi?n, d?a trên s? cung c?p QueryString giá tr? bi?n.

Gi?i đáp th?c m?c

  • Khi b?n s? d?ng VaryByParam, lưu ? r?ng nh?ng thay đ?i đ? các QueryString c?a bi?n trư?ng h?p k?t qu? trong b? nh? cache b? sung m?c.
  • H?y nh? r?ng Th?i gian th?c hi?n đư?c xác đ?nh trong giây.
  • Khi b?n s? d?ng VaryByCustom và ghi đè các HttpApplication.GetVaryByCustomString phương pháp trong Global.asax t?p tin, thi?t l?p m?c đ?nh c?a Tr?nh duy?t đư?c s? d?ng n?u không phù h?p không đư?c t?m th?y cho chu?i tùy ch?nh mà là cung c?p các thu?c tính.

THAM KH?O

Đ? có thêm thông tin v? trang đ?u ra b? nh? đ?m, tham kh?o các các trang Web Microsoft sau đây:
GotDotNet trang đ?u ra b? nh? đ?m QuickStart hư?ng d?n
Microsoft.NET Framework Kit phát tri?n ph?n m?m (SDK)
http://msdn2.Microsoft.com/en-US/Library/ms950382.aspx

B? nh? đ?m ASP.Các trang m?ng
http://msdn2.Microsoft.com/en-US/Library/xsbfdd8c (vs.71) .aspx

@ OutputCache
http://msdn2.Microsoft.com/en-US/Library/hdxfb6cy (vs.71) .aspx

Thu?c tính

ID c?a bài: 308375 - L?n xem xét sau cùng: 27 Tháng Tám 2011 - Xem xét l?i: 2.0
Áp d?ng
T? khóa: 
kbcaching kbhowtomaster kbio kbmt KB308375 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:308375

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