Bạn hiện đang ngoại tuyến, hãy chờ internet để kết nối lại

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

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
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.

Quay lại các đầu trang

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
Quay lại các đầu trang

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" %>					
Quay lại các đầu trang

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.
Quay lại các đầu 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.
Quay lại các đầu trang

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.
Quay lại các đầu trang
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
Quay lại các đầu trang

Cảnh báo: Bài viết này được dịch tự động

Thuộc tính

ID Bài viết: 308375 - Xem lại Lần cuối: 08/27/2011 23:21:00 - Bản sửa đổi: 2.0

, , ,

  • kbcaching kbhowtomaster kbio kbmt KB308375 KbMtvi
Phản hồi
ms.js">