DbNull не может быть преобразовано в Int32. Если ваше значение может быть нулевым, то ваша собственность должна быть обнуляемой.
public MyClass
{
public int? NullableProp {get; set;}
}
и ваш код
var saleProduct = new SaleProduct
{
NullableProp = String.IsNullOrEmpty(txtInvoice.Text) ? (int)null :
Convert.ToInt32(txtInvoice.Text),
....
}
Далее, похоже, у вас есть ModelValidationError. В этом случае вам необходимо проверить EntityValidationErrors
, чтобы понять, что именно происходит с вашей моделью.