2011-01-26 21 views
5

Tôi đang cố gắng để viết cookie từ trang web của mình và tôi đang cố gắng tìm ra những hàm ý thời gian có trên thuộc tính HttpCookie.Expire. Tôi có nên vượt qua DateTime.Now.AddDays(1) hoặc DateTime.UtcNow.AddDays(1) hoặc múi giờ của người dùng cộng với một ngày không?HttpCookie.Giới hạn múi giờ ngoài ý muốn?

Trả lời

11

Nếu bạn sử dụng giờ địa phương, .NET sẽ tự động chuyển đổi thành GMT khi xuất nó cho khách hàng.

Vì vậy, nó không quan trọng đối với cookie, nhưng tôi khuyên bạn nên luôn làm việc với UTC, vì vậy ít nhất bạn có thể giả định rằng trong dữ liệu của bạn bù trừ múi giờ luôn là 0.

+0

[tài liệu cho hệ thống. net.cookie.expires] (https://msdn.microsoft.com/en-us/library/system.net.cookie.expires (v = vs.110) .aspx) sao lưu câu trả lời của bạn liên quan đến lớp đó, nhưng [tài liệu dành cho system.web.httpcookie.expires] (https://msdn.microsoft.com/en-us/library/system.web.httpcookie.expires (v = vs.110) .aspx) không chứa thông tin. Có tài liệu nào khác xác nhận rằng hành vi này giống nhau không? (Tôi không biết tại sao có hai lớp học khác nhau, nhưng đó là bên cạnh điểm) –

+0

Đừng bận tâm câu hỏi trước của tôi. Nó được trả lời trong câu trả lời SO này: https://stackoverflow.com/a/31527059/1009155 –