Подтвердить что ты не робот

Код С# не будет компилироваться. Нет неявного преобразования между нулем и int

Возможный дубликат:
Нулевые типы и тернарный оператор: почему? 10: null` запрещено?

Почему это не работает? Похоже на действительный код.

  string cert = ddCovCert.SelectedValue;
  int? x = (string.IsNullOrEmpty(cert)) ? null: int.Parse(cert);
  Display(x);

Как мне это закодировать? Метод принимает значение Nullable. Если в выпадающем списке выбрана строка, мне нужно проанализировать это в int, иначе я хочу передать null методу.

4b9b3361

Ответ 1

int? x = string.IsNullOrEmpty(cert) ? (int?)null : int.Parse(cert);

Ответ 2

Я столкнулся с одним и тем же... Я обычно просто передал значение null в (int?)

int? x = (string.IsNullOrEmpty(cert)) ? (int?)null: int.Parse(cert);