PDA

View Full Version : سوال: مشکل refresh کردن داده ها در dataset



sina_t
یک شنبه 14 خرداد 1391, 11:17 صبح
با سلام؛

من یه پروژه دارم که یک فایل xsd که یک فایل dataset هست براش درست کردم. وقتی برنامه رو اجرا می کنم
همه چیز درسته و داده ها رو از db می گیره و در DataGridView نمایش میده.

حالا من یک کلید Refresh در فرم قرار دادم که متد dataAdapter.Fill رو فراخوانی می کنه. با اینکه dataset
پر میشه ولی تغییرات دیده نمیشه و وضعیت داده ها دقیقا" همون وضعیتیه که زمان باز کردن Application داشتن و Refresh نمیشه. در ضمن این تغییرات هم بیرون از Application داره اتفاق می افته مثلا" در SQL Manager.

این هم کدی که برای Refresh کردن نوشتم و Accounts هم اسم Table مورد نظر هست که قراره داده های
داخل اون نمایش داده بشه:

public override void OnRefreshData()
{
MyBook.Data.BookDataSetTableAdapters.AccountsTable Adapter adapter =
new Data.BookDataSetTableAdapters.AccountsTableAdapter ();
adapter.Fill(bookDataSet.Accounts);

dataGridView1.DataSource = bookDataSet;
dataGridView1.DataMember = "Accounts";
}


اگر کسی کد Refresh کردن Dataset رو میدونه خواهش می کنم کمک منه.
ممنون

hezare
دوشنبه 15 خرداد 1391, 00:32 صبح
چرا با تایمر گریدتون رو رفرش نمی کنید که نیازی به رفرش کردن دیتاست نداشته باشید ..امتحان کنید

sina_t
دوشنبه 15 خرداد 1391, 01:00 صبح
چرا با تایمر گریدتون رو رفرش نمی کنید که نیازی به رفرش کردن دیتاست نداشته باشید ..امتحان کنید

به دو دلیل:

sina_t
دوشنبه 15 خرداد 1391, 01:08 صبح
چرا با تایمر گریدتون رو رفرش نمی کنید که نیازی به رفرش کردن دیتاست نداشته باشید ..امتحان کنید

به دو دلیل:

اولا" اگه قرار باشه با تایمر Refresh بشه و حجم دیتا در Server خیلی زیاد باشه یا Viewای که
برای نمایش داده ها استفاده کردیم سنگین باشه کلا" Application میره تو باقالیا :لبخند: .
بعد تازه فقط مسأله نمایش داده نیست من با DataAdapter دارم Insert, Update, Delete هم
انجام می دم. و باید قبل از این اعمال Dataset حتما" Refresh بشه که کاربر داده ها رو بروز
ببینه.

دوم اینکه اصلا" چه تو یه Timer چه با کلیک یک Button کد Refresh کردن DataGridView بدون Refresh
شدن DataSet هیچ فایده ای نداره واسه اینکه DataGridView داده های موجود در DataSet رو نمایش میده.

آقا یکی به داد من برسه! :گریه:

hezare
دوشنبه 15 خرداد 1391, 03:05 صبح
به TableAdapter بصورت ویزاردی مجوز update , delete , insert دادین؟
و توی advance option?