Làm cách nào để sử dụng VaryByParam với nhiều tham số?


103

Trong ASP.NET MVC2 tôi sử dụng OutputCacheVaryByParamthuộc tính. Tôi thấy nó hoạt động tốt với một tham số duy nhất, nhưng cú pháp chính xác khi tôi có nhiều tham số trên phương thức là gì?

[OutputCache(Duration=30, VaryByParam = "customerId"]
public ActionResult Index(int customerId)
{
//I've got this one under control, since it only has one parameter
}

[OutputCache(Duration=30, VaryByParam = "customerId"]
public ActionResult Index(int customerId, int languageId)
{
//What is the correct syntax for VaryByParam now that I have a second parameter?
}

Làm cách nào để tải nó vào bộ nhớ cache các trang sử dụng cả hai tham số? Tôi có nhập thêm thuộc tính hai lần không? Hay viết "customerId, languageId" làm giá trị ??

Câu trả lời:


200

Bạn có thể sử dụng * cho tất cả các tham số hoặc danh sách được phân tách bằng dấu chấm phẩy ( VaryByParam = "customerId;languageId").

Bạn cũng có thể sử dụng không có nếu bạn không muốn nó lưu vào bộ nhớ cache các phiên bản khác nhau ....

Đây là một bản viết hay dành riêng cho MVC .


1

Bạn cũng có thể sử dụng *để bao gồm tất cả các tham số

 [OutputCache(Duration =9234556,VaryByParam = "*")]

1
Chào mừng bạn đến với Stack Overflow. Mặc dù mã này có thể trả lời câu hỏi, nhưng việc cung cấp thêm ngữ cảnh liên quan đến lý do và / hoặc cách mã này trả lời câu hỏi sẽ cải thiện giá trị lâu dài của nó. Làm thế nào để trả lời
Elletlar
Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.