Лучший перегруженный метод соответствует для int tryparse Error
Я просто пытаюсь это сделать, поэтому позже, когда я сохраню свои значения в базе данных, они должны быть установлены на ноль, если текстовое поле пусто.
int? DeliveryAdrID = null;
int.TryParse(TextBoxDeliveryAdrID.Text, out DeliveryAdrID);
Но у меня ошибка при разборе.
Вышеупомянутое решение должно позже сделать возможным сохранение пустых значений текстового поля в базе данных как "NULL" вместо 0.
Целое решение:
int parsedValue;
int? DeliveryAdrID = int.TryParse(TextBoxDeliveryAdrID.Text, out parsedValue) ? parsedValue : (int?)null;
int id = Convert.ToInt32(GridViewData.SelectedValue.ToString());
var data = tf.DBTable.Where(a => a.ID == id).FirstOrDefault();
if (data == null)
{
DBTable mt = new DBTable();
mt.Customer = TextBoxCustomer.Text;
mt.Country = TextBoxCountry.Text;
mt.DeliveryAdrID = parsedValue;
tf.DBTable.AddObject(mt);
tf.SaveChanges();
}
else
{
data.Customer = TextBoxCustomer.Text;
data.Country = TextBoxCountry.Text;
data.DeliveryAdrID = parsedValue;
tf.SaveChanges();
}
}
1 ответ
Решение
Вы не можете дать недействительный int для int.TryParse
, Это должно быть Int. То, что вы пытаетесь сделать, может быть достигнуто так:
int parsedValue;
int? DeliveryAdrID = int.TryParse(TextBoxDeliveryAdrID.Text, out parsedValue) ? parsedValue : (int?) null;