Một đồng nghiệp cũ làm việc để trích dẫn cha mình về các công cụ, "Bạn phải thông minh hơn nó."Tôi có thực sự muốn trả lại ngày tối thiểu không?
Trong mã bên dưới, Resharper cho tôi biết, "Giá trị được chỉ định không được sử dụng trong bất kỳ đường dẫn thực hiện nào" (trỏ tới dòng đầu tiên). Nếu tôi chấp nhận đề nghị trợ giúp của nó, dt không được chỉ định một giá trị ("hôm nay").
Đây có phải là trường hợp "Tôi phải thông minh hơn" và bỏ qua cảnh báo của họ hay đây là trường hợp công cụ thông minh hơn tôi và tôi chỉ không hiểu nó?
Việc tôi thực hiện là nếu câu lệnh if không thành công, ngày hiện tại được trả về (giá trị mặc định tôi muốn), nhưng nếu tôi chấp nhận "yêu cầu" của Resharper, nó sẽ trả về giá trị mặc định cho ngày giờ, ngày tối thiểu mà tôi giả định là ngày 7/4/1776 hoặc 1/1/0000 hoặc hơn.
DateTime dt = DateTime.Now;
if (!(DateTime.TryParse(substr, out dt))) {
using (var dtpDlgForm = new ReturnDate("Please select the Date that the file was created:")) {
if (dtpDlgForm.ShowDialog() == DialogResult.OK) {
dt = dtpDlgForm.ReturnVal;
}
}
}
return dt;
Đây là trường hợp tôi đề nghị bạn sử dụng nhiều lần trả về. Rõ ràng hơn nếu bạn thay dòng cuối cùng bằng 'return DateTime.Now' và dòng ở giữa sử dụng với' return dtpDlgForm.ReturnVal'. –