Ошибка присвоения null обнуляемому int - «Значение 'null' недействительно для свойства»

У меня есть это свойство в моей модели представления:

[DisplayName("Region")]
public int? RegionId { get; set; }

Я передаю свою модель представления контроллеру, и он не работает на ModelState.IsValid , если RegionId равен нулю. Если я передам ему целое число, он будет работать нормально.

Сообщение об ошибке:

Значение «null» недействительно для региона

. Я также пробовал вызвать это, прежде чем проверять ModelState.IsValid , но получаю ту же ошибку. :

if (viewModel.RegionId == null)
    viewModel.RegionId = (int?)null;

В чем проблема? Почему я не могу присвоить значение null чему-то, что допускает значение null?

15
задан Steven 30 August 2011 в 20:53
поделиться