Xem xét tài liệu này
, có vẻ như bạn đang chỉ định hai tùy chọn trái ngược nhau (AllowZeroDateTime=true
và ConvertZeroDateTime=true
) và một cái có vẻ như không được liệt kê (ZeroDateTimeBehavior=ConvertToNull
).
Tôi đề nghị điều đó trừ khi bạn có dữ liệu thực tế là DateTime.MinValue
mà bạn không muốn trộn lẫn với giá trị "không", bạn chỉ chỉ định ConvertZeroDateTime=true
và phát hiện xem kết quả có phải là DateTime.MinValue
không . Bạn chắc chắn không nên gọi reader.GetDateTime()
, sau đó chuyển đổi kết quả thành một chuỗi, rồi quay lại DateTime
- bạn nên tránh chuyển đổi chuỗi càng xa càng tốt, vì chúng có thể làm rối tung mọi thứ đối với bạn một cách dễ dàng.
Không thực sự rõ ràng bạn muốn giá trị chuỗi nào cho những giá trị "0" này, nhưng bạn có thể viết hoa đặc biệt cho chúng bằng DateTime.MinValue
khá dễ dàng. Cá nhân tôi thực sự muốn giữ dữ liệu ở dạng "gốc" càng nhiều càng tốt thay vì chuyển đổi mọi thứ thành chuỗi, nhưng đó là một trận chiến khác.