با سلام و عرض خسته نباشید
با EF کار میکنم و درون یکی از Entity ها یک فیلد از نوع int دارم ولی هنگام ADD کردن بهم خطا زیر رو میده : من کدش رو کامل براتون میزارم :
خطی که تیره کردم خطا میده : Input string was not in as correct format
Models.Person person = new Models.Person();
MessageBox.Show("ثبت با موفقیت انجام شد");
سلام. دوست عزیز خطا داره میگه مقدار ورودی که در txtAge وجود داره معتبر نیست, و نمی تونه اونو به Int32 تبدیل کنه.
چک کنید تا کاراکتر غیر عددی در Textbox مربوطه وجود نداشته باشد
ممنون از پاسختون
زمانی که txtPerson رو خالی رد میکنم بهم این پیغام رو میده ،خوب من attributi برای Age نزاشتم که Required بشه ، پس اگه بخوام txtPerson رو خالی رد کنم باید براش if بزارم که اگر ""=!txtAge.Text اونوقت :
if (txtAge.Text!="")
{
person.Age =Convert.ToInt32 (txtAge.Text);
}
اگر می خواهید txtPerson رو خالی گذاشتنی خطایی نگیرد مدلتون رو اینطوری تغییر دهید:
[StringLength(50)] public string FirstName { get; set; } [StringLength(50)] public string LastName { get; set; }
ممنون از پاسختون
زمانی که txtAge رو خالی رد میکنم بهم این پیغام رو میده ،خوب من attributi برای Age نزاشتم که Required بشه ، پس اگه بخوام txtAge رو خالی رد کنم باید براش if بزارم که اگر ""=!txtAge.Text اونوقت :
دوست عزیز اگر امکانش هست از این به بعد سوالتون رو تمیز و در قالب یک باکس بپرسید تا ماهم در حد توان جواب بدیم. روی سوال تاپیک یچیز هست, و سوالات داخل تاپیک یچیز دیگه. از این شاخه به اون شاخه پریدن حواس هر دوی مارو پرت میکنه.
--------------
خب حالا هرچی بگذریم ...
اگر مشکل txtPerson حل شد, بله با یک شرط ساده که خودتون هم نوشتید می تونید خطای txtAge رو هم Handle کنید.
بله حتما
ممنونم از پاسختون .
هیچ کاربری تا کنون از این پست تشکر نکرده است
با ما تماس بگیرید تا در این مسیر همراهتان باشیم :)