Chúng tôi có một ứng dụng web ASP.Net 2.0 và chạy với máy chủ ở Midwest (Giờ chuẩn miền Đông). Tại thời điểm này, tất cả khách hàng của chúng tôi đều ở cùng múi giờ với máy chủ. Chúng tôi đang đưa một máy chủ khác trực tuyến tại Arizona (Giờ chuẩn miền núi).Múi giờ ứng dụng web phát hành
Chúng tôi lưu trữ tất cả thời gian của mình trong cơ sở dữ liệu SQL 2005 qua C# codebehind DateTime.UtcNow.
Trong khi thử nghiệm, chúng tôi gặp phải một số vấn đề về chuyển đổi múi giờ. Vấn đề của chúng tôi là trong trình duyệt web, thời gian của chúng tôi hiển thị Giờ chuẩn miền núi thay vì múi giờ chúng tôi đang thử nghiệm từ Giờ chuẩn miền Đông.
Khi nhập thông tin mới, thông tin sẽ được lưu dưới dạng UTC trong cơ sở dữ liệu, nhưng khi chúng tôi xem thông tin đó trong trình duyệt, nó sẽ hiển thị Giờ chuẩn miền núi. Dưới đây là mã lấy giá trị UTC từ cơ sở dữ liệu và hiển thị nó trong trình duyệt.
lblUpdatedDate.Text = Convert.ToDateTime(dr["UpdatedDate"]).ToLocalTime().ToString();
Mã trên trả về Giờ chuẩn miền núi nơi máy chủ không phải là Giờ chuẩn miền đông nơi trình duyệt đang chạy. Làm cách nào để chúng tôi có thời gian hiển thị khi người dùng ở đâu?
Điểm tuyệt vời Jon. –