Старый коллега по работе цитировал своего отца об инструментах: «Вы должны быть умнее, чем это.
В приведенном ниже коде Resharper говорит мне: «Назначенное значение не используется ни в одном пути выполнения» (указывая на первую строку). Если я принимаю его предложение о помощи, dt не присваивается значение («сегодня ").
Это тот случай, когда "я должен быть умнее его" и игнорировать их предупреждение, или это тот случай, когда инструмент умнее меня, а я просто не понимаю его?
Моя точка зрения на ситуацию заключается в том, что если оператор if терпит неудачу, возвращается текущая дата (значение по умолчанию, которое я хочу), но если я соглашаюсь с «требованиями» Resharper, он вернет значение по умолчанию для Datetime, которое является минимальной датой, Я предполагаю, что это что-то вроде 04.07.1776 или 01.01.0000 или около того
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;