استفاده از Entity و bindingSource برای درج داده
با سلام .
من اومدم واسه تست یه جدول Test ساختم با دوتا ستون - ID که کلید اصلیه و اتوماتیک افزایش پیدا میکنه . و Name
مدلم رو ساختم
یه bindingSource انداختم رویه فرم و وصلش کردم به جدول Test
bindingNavigator رو هم وصل کردم به bindingSource
دیتاگریدویوم رو هم وصل کردم به bindingSource
تو bindingNavigator یه دکمه گذاشتم واسه Save و توش این کدها رو نوشتم . ولی تو جدول ذخیره نمیکنه .
private void toolStripButton1_Click(object sender, EventArgs e)
{
StoreDBEntities context = new StoreDBEntities();
context.SaveChanges();
MessageBox.Show("ok");
}
نقل قول: استفاده از Entity و bindingSource برای درج داده
اون پیغام OK رو هم نشون میده . ولی چیزی ذخیره نمیشه . البته یادم رفت بگم که یه دکمه هم گذاشتم و Text اون رو Bind کردم به bindingSource
نقل قول: استفاده از Entity و bindingSource برای درج داده
تریس کنید ببینید اصلا چیزی به کانتکست اد شده؟ روی کانکست گزینه EntityChange یا چیزی شبیه اینرو بررسی کنید ببینید تغییرات چی هست
1 ضمیمه
نقل قول: استفاده از Entity و bindingSource برای درج داده
نقل قول:
نوشته شده توسط
parvizwpf
تریس کنید ببینید اصلا چیزی به کانتکست اد شده؟ روی کانکست گزینه EntityChange یا چیزی شبیه اینرو بررسی کنید ببینید تغییرات چی هست
همچین چیزی ندیدم !!!!!!
ضمیمه 147228
1 ضمیمه
نقل قول: استفاده از Entity و bindingSource برای درج داده
اینم یه عکس دیگه از تریس برنامه و context
ضمیمه 147229
نقل قول: استفاده از Entity و bindingSource برای درج داده
دوستان کسی به این مشکل بر نخورده ؟
یا نمیتونه راهنمایی کنه ؟
نقل قول: استفاده از Entity و bindingSource برای درج داده
ببینید شما نمیتونید با بایند کردن داده به تنهایی دیتا در دیتابیس ذخیره کنید برای اینکار باید آبجکت جدید ساخته بشه و به کانتکست داده بشه سپس ذخیره کنید. در واقع باید به جدول کانتکست مورد نظرتون اد کنید و بعد سیو رو فراخوانی کنید.
نقل قول: استفاده از Entity و bindingSource برای درج داده
میشه محبت کنید و بگید چطور از طریق بایند کردن میتونم اینکار رو بکنم ؟
بنده طبق آموزش آقای محسن جمشیدی عزیز پیش رفتم .
ویدئوهاشون هست تو تالار
نقل قول: استفاده از Entity و bindingSource برای درج داده
نقل قول: استفاده از Entity و bindingSource برای درج داده
من کار ایشون رو ندیدم اما طبق خود مطلب مایکروسافت پیش برید:
https://msdn.microsoft.com/en-us/lib...v=vs.113).aspx
نقل قول: استفاده از Entity و bindingSource برای درج داده
نقل قول:
نوشته شده توسط
parvizwpf
حقیقتش مایکروسافت خیلی پیچیده گفته و کلی .
کسی سمپل نداره .
نقل قول: استفاده از Entity و bindingSource برای درج داده
من الان که سرچ میکنم و قبلا هم تجربه دارم همون حرفی که بالا زدم رو باز مجدد میگم . حتی الان مایکروسافت هم که لینک دادم برای سه عمل اصلی در خود دیتا گرید مطلب گذاشته . شما وقتی بخواهید ذخیره کنید می بایست آبجکتی به کانتکست اد بشه تا بعنوان insert اون رو بپذیره بعد خودش با عمل save اون رو ذخیره خواهد کرد . حالا در کار شما هیچ جا این عمل اتفاق نیافتاده. حتی با وجود بایندینگ هم اینکار باید انجام بشه.
باید این کد یه جایی در کد شما باشه:
context.tblTest.Add(آبجکت جدید)
نقل قول: استفاده از Entity و bindingSource برای درج داده
نقل قول:
نوشته شده توسط
parvizwpf
من الان که سرچ میکنم و قبلا هم تجربه دارم همون حرفی که بالا زدم رو باز مجدد میگم . حتی الان مایکروسافت هم که لینک دادم برای سه عمل اصلی در خود دیتا گرید مطلب گذاشته . شما وقتی بخواهید ذخیره کنید می بایست آبجکتی به کانتکست اد بشه تا بعنوان insert اون رو بپذیره بعد خودش با عمل save اون رو ذخیره خواهد کرد . حالا در کار شما هیچ جا این عمل اتفاق نیافتاده. حتی با وجود بایندینگ هم اینکار باید انجام بشه.
باید این کد یه جایی در کد شما باشه:
context.tblTest.Add(آبجکت جدید)
حرفتون کاملا صحیح بود . سپاس . کد رو میزارم . البته با یه دیتابیس تستی دیگه .
private void toolStripButton1_Click(object sender, EventArgs e)
{
tbltest tblts = new EntetyTest.tbltest();
tblts.Esm = textBox1.Text;
ts.tbltest.Add(tblts);
ts.SaveChanges();
MessageBox.Show("ok");
bindingSource1.DataSource = ts.tbltest.ToList();
}