Chúng tôi gặp sự cố khi một nhà phát triển tạo mã bên dưới và hoạt động trên môi trường DEV của anh ấy. Nhưng khi nó được kiểm tra vào QA, mã phá vỡ với thông báo lỗi dưới đây:TimeZoneInfo.ConvertTimeToUtc issue
myRecord.UTCStartTime = TimeZoneInfo.ConvertTimeToUtc(myRecord.StartTime, myTimeZone);
Việc chuyển đổi không thể hoàn tất vì đã cung cấp DateTime không có tài sản Kind đặt đúng. Ví dụ: khi thuộc tính Loại là DateTimeKind.Local, múi giờ nguồn phải là TimeZoneInfo.Local.
Trên môi trường DEV của tôi, mã ở trên tạo ra lỗi giống như máy chủ QA. Tôi đã áp dụng thay đổi bên dưới để khắc phục sự cố:
DateTime utcStart = DateTime.SpecifyKind(myRecord.StartTime, DateTimeKind.Unspecified);
myRecord.UTCStartTime = TimeZoneInfo.ConvertTimeToUtc(utcStart, myTimeZone);
Tại sao ví dụ mã đầu tiên hoạt động trên môi trường DEV1 nhưng phá vỡ môi trường DEV và trên máy chủ QA của chúng tôi?
Bạn chưa trả lời câu hỏi - "Tại sao các mã đầu tiên ví dụ làm việc trên môi trường DEV1 nhưng phá vỡ trên môi trường DEV của tôi và trên máy chủ của chúng tôi bảo đảm chất lượng?" – Enigmativity
Mã này giống như cách giải quyết được đề cập trong câu hỏi. – BACON