Я получил этот код, предназначенный для преобразования нулевых десятичных Vals в «нулевой» величины:Как я могу проверить десятичное значение для null?
decimal paymentTot = TryConvertToDecimal(boxPaymentAmount.Text);
if ((null == paymentTot) || (paymentTot < 0))
{
paymentTot = 0M; // or simply 0?
}
private decimal TryConvertToDecimal(String incoming)
{
decimal result = 0.0M;
try
{
result = Convert.ToDecimal(incoming);
}
catch
{
; // nada
}
return result;
}
Он компилирует, но я получаю это предупреждение: «Результат выражения всегда„ложь“так как значение типа «десятичный» никогда не равно «null» типа «десятичный?»
Я не понимаю, что он пытается мне сказать. Какой тест мне нужно, чтобы успокоить предупреждающий излучатель и, что еще более важно, следить за тем, чтобы мой код мог приравниваться к «истине», когда это намерение?
'decimal' является типом значения и никогда не может быть' null'. Вы хотите, чтобы результат «TryConvertToDecimal' был« null », если синтаксический анализ не прошел? –
Нет, я хочу, чтобы он возвращал 0. –