PDA

View Full Version : سوال: مشکل در ویرایش داده ها



teardrop
دوشنبه 29 فروردین 1390, 06:51 صبح
به نام خدا

با سلام

در اول برنامه این رو نوشتم:

objFC = new FilmClupDataContext(objUser._strCon);

در رویداد load کد زیر رو نوشتم:

var film = objFC.TFilms.Single(f => f.F_ ==
User._Key);
f_TextBox.DataBindings.Add("Text", film, "f_");
fnameTextBox.DataBindings.Add("Text", film,"fname");
fcountTextBox.DataBindings.Add("Text", film, "fcount");

و دکمه ای هم برای ویرایش گذاشته ام و کدش اینه:

objFC.SubmitChanges();

دو اطلاعات اول از روی textboxکه تغییر میدم در بانک ذخیره میشه اما fcount که در بانک از نوع int هست تغییر میدم ذخیره نمیشه!
میخواستم بپرسم مشکل چیه؟و برای رفع این مشکل چه کار کنم؟
با تشکر

saeeddavid
دوشنبه 29 فروردین 1390, 13:28 عصر
با سلام

دوست عزیز اینجور که شما نوشتین فکر کنم مشکلتون به این دلیل است که fcount را در دیتابیس از نوع int تعریف کردین ولی در برنامه مقدار آن را از textbox می گیرین که مقدار برگشتی آن از نوع string است و به دلیل اینکه برنامه نمی تونه بطور مستقیم تبدیل نوع را انجام دهد ارور می ده . بهتره اول تبدیل نوع را برای آن انجام دهید بعد ذخیره کنید .

teardrop
سه شنبه 30 فروردین 1390, 17:22 عصر
با سلام

دوست عزیز اینجور که شما نوشتین فکر کنم مشکلتون به این دلیل است که fcount را در دیتابیس از نوع int تعریف کردین ولی در برنامه مقدار آن را از textbox می گیرین که مقدار برگشتی آن از نوع string است و به دلیل اینکه برنامه نمی تونه بطور مستقیم تبدیل نوع را انجام دهد ارور می ده . بهتره اول تبدیل نوع را برای آن انجام دهید بعد ذخیره کنید .

چه طوری انجام دادنش مهمه!؟
من با روشی دیگه مشکلم رو حل کردم اما کد خوبی نداره.

saeeddavid
پنج شنبه 01 اردیبهشت 1390, 20:18 عصر
من از این روش استفاده می کنم ببیین چطوره .

private int fcount;

fcount = int.pars(fcountTextBox.text);

var film = objFC.TFilms.Single(f => f.F_ ==
User._Key);

film.f_ = f_TextBox.text;
film.fname = fnameTextboxt.text;
film.fcount = fcount;

objFC.SubmitChanges();