2010-04-27 49 views
20

Chúng tôi sử dụng ASP.NET 3.5 (phương pháp dựa trên điều khiển) và cần lưu trữ riêng cho một yêu cầu http.Làm thế nào để thực hiện yêu cầu bộ nhớ cache theo yêu cầu trong ASP.NET 3.5

Bộ nhớ cache theo chủ đề cụ thể với các khóa từ id phiên sẽ không hoạt động vì chủ đề được gộp chung và do đó tôi có cơ hội có dữ liệu từ một số yêu cầu trước đó trong bộ nhớ cache, điều này là không mong muốn trong trường hợp của tôi. Tôi luôn cần phải có dung lượng lưu trữ hoàn toàn mới cho mỗi yêu cầu có sẵn thông qua toàn bộ yêu cầu.

Bất kỳ ý tưởng nào về cách thực hiện trong ASP.NET 3.5?

Trả lời

33

Chúng tôi đã sử dụng HttpContext.Current.Items bộ sưu tập để làm RequestScope bộ nhớ đệm. Nó hoạt động tốt.

2

Cách sử dụng bộ sưu tập Ngữ cảnh. Điều này cho phép dữ liệu được chia sẻ giữa tất cả các điều khiển của bạn nhưng chỉ kéo dài cho yêu cầu.

Sử dụng nó như thế này Context.Items ("BASE_URL") = "default.aspx"

+0

Ý tưởng tốt đẹp! Bạn có thể vui lòng chỉ cho tôi cách để làm điều đó? – Artem

+0

Duh. Có một cuộc gọi .. nhưng house9 đã nhận nó trên đầu ** ** HttpContext.Items ["key"] = value; hoặc context.Items ("base_url") = "default.aspx" – ggonsalv

Các vấn đề liên quan