Вы можете сделать что-то вроде:
contract.MaximumPermissableEndDate = string.IsNullOrEmpty(maxPermissableEndDate) ?
contract.MaximumPermissableEndDate
: new Nullable<DateTime>(DateTime.Parse(maxPermissableEndDate));
Я пытаюсь преобразовать строку в DateTime?
использование, DateTime.Parse()
но только тогда, когда строка не равна null. Я пытаюсь использовать Null-Conditional Operator
Это то, что я пытаюсь заменить:
string maxPermissableEndDate = response.Contract.ReferenceFields.FirstOrDefault(t => t.code == "MAX_EXT_DATE")?.Value;
if (!string.IsNullOrEmpty(maxPermissableEndDate))
{
contract.MaximumPermissableEndDate = DateTime.Parse(maxPermissableEndDate);
}
Как назначить свойство nullTime MaximumPermissableEndDate с нулевым значением таким привлекательным способом, только если переменная maxPermissableEndDate не равна нулю?
Это пример, который я рассматриваю из документации C # 6.0:
string result = value;
if (value != null) // Skip empty string check for elucidation
{
result = value.Substring(0, Math.Min(value.Length, length));
}
С альтернативой:
value?.Substring(0, Math.Min(value.Length, length));
c#,