Khi tôi thực hiện như sau tôi nhận được:không thể chuyển đổi hoàn toàn kiểu System.DateTime? để System.DateTime
inv.RSV = pid.RSVDate
tôi nhận được như sau: không thể mặc nhiên chuyển đổi loại System.DateTime? vào System.DateTime.
Trong trường hợp này, inv.RSV là DateTime và pid.RSVDate là DateTime?
Tôi đã thử các sau đây nhưng đã không thành công:
if (pid.RSVDate != null)
{
inv.RSV = pid.RSVDate != null ? pid.RSVDate : (DateTime?)null;
}
Nếu pid.RSVDate là null, tôi thích không gán inv.RSV bất cứ điều gì trong trường hợp này nó sẽ là null.
inv.RSV không bắt đầu bằng. Làm thế nào để tôi nói không cập nhật nó không có giá trị cho pid.RSVDate –
@NatePet bạn kiểm tra 'pid.RSVDate.HasValue'. Nếu nó không có giá trị được gán thì 'HasValue' sẽ trả về' false', trong trường hợp này bạn không cập nhật giá trị khác của bạn. Dựa trên thông báo lỗi của bạn, 'inv.RSV' là' DateTime', không thể có giá trị null. Nếu bạn muốn gán null cho nó, hãy thay đổi kiểu của nó thành 'DateTime?' Thành nullable. –
@NatePet, "inv.RSV không có giá trị để bắt đầu bằng": bạn có chắc chắn về điều đó không? Ngày giờ ** không được rỗng ** –