Как преобразовать строку в тип int в С#?
Я беру строковое значение из текстового поля с именем txtLastAppointmentNo
и
Я хочу преобразовать его в int
, а затем сохранить его в базе данных с использованием Linq в sql, но я получаю ошибку "входная строка не в правильном формате".
Моя строка ввода - 2.
Мой код:
objnew.lastAppointmentNo=Convert.ToInt32(txtLastAppointmenNo.Text);
Пожалуйста, укажите мою ошибку.
Ответы
Ответ 1
Предполагая, что вы используете WebForms, вам просто нужно получить доступ к значению текстового поля, а не к самому текстовому поле:
objnew.lastAppointmentNo = Convert.ToInt32(txtLastAppointmenNo.Text);
Или если вы ссылаетесь на элемент управления HTML, то:
objnew.lastAppointmentNo = Convert.ToInt32(Request["txtLastAppointmenNo"]);
Ответ 2
Вы также можете выбрать int.Parse
или int.TryParse
или Convert.ToInt32
//int.Parse
int num = int.Parse(text);
//Convert.ToInt32
int num = Convert.ToInt32(text);
//int.TryParse
string text1 = "x";
int num1;
bool res = int.TryParse(text1, out num1);
if (res == false)
{
// String is not a number.
}
Ответ 3
Ответ для меня был пустой строкой!
В objnew.lastAppointmentNo=Convert.ToInt32(txtLastAppointmenNo.Text);
, txtLastAppointmenNo.Text
было пустым значением.