با عرض سلام.استاد من هر کاری میکنم نمیتونم رکورد رو تو دیتا گرید ویو پاک کنم.تمام مراحلو مثل اموزشتون در سی شارپ پیشرفته انجام دادم.اخطار جهت حذف name رو میده ولی از دیتابیس پاک نمیکنه.راهنمایی کنید بی زحمت
کد رو قرار بدید
(If(dgcostomer.currentRow!=null
}
(()Using(unitOfwork db=new unitofwork
Int costomerid=int.parse(dgcostomer.currentRow.cells[0].value.tostring
Db.customerRipozitory.Delletcostomer
(Costomerid)
()Db.save.
()Bindgide حتی در موقع اجرا کامپایلر هم خطا نمیده ولی پاک نمیکنه.در ضمن در فرم ثبت مشتری هم به همین مشکل برخوروم.در دیتابیس ثبت نمیکنه.البته در این کد برای سهولت تایپ کد داخلmassageboxرو ننوشتم.اگر مینوشتم اخطار حذف رو میداد ولی باز عمل پاک کرون انجام نمیشد
لطفا از طریق کلیدکد ادیتور قرار بدید تا بتونیم کد رو بخونیم
private void btndelletcostomer_Click(object sender, EventArgs e)
{
if (dgcostomer.CurrentRow != null)
{
using (unitOfwork db = new unitOfwork())
{
string name = dgcostomer.CurrentRow.Cells[1].Value.ToString();
if (MessageBox.Show($"ایا از حذف {name}مطمعن هستید", "توجه", MessageBoxButtons.YesNo, MessageBoxIcon.Warning) == DialogResult.Yes)
{
int costomerid = int.Parse(dgcostomer.CurrentRow.Cells[0].Value.ToString());
db.costomerRipozitory.Delletcostomer(costomerid);
db.save();
bindgride();
}
}
}
else
{
MessageBox.Show("لطفا شخص مورد نظر را انتخاب کنید");
}
کد متد save رو بررسی کنید ببینید کامل کردید
در این کد ها مشکلی وجود نداره
بعد customerid رو بررسی کنید درست باشه
namespace DATALAYER.CONTEX
{
public class unitOfwork : IDisposable
{
MYHESABEntities db = new MYHESABEntities();
private IcustomerRipozitory _costomerRipozitory;
public IcustomerRipozitory costomerRipozitory {
get {
if (_costomerRipozitory == null)
{
_costomerRipozitory = new costomerRipozitory();
}
return _costomerRipozitory;
}
}
public void save()
{
db.SaveChanges();
}
public void Dispose()
{
db.Dispose();
}
}
}
اینم کد save.طبق اموزشهای خودتون در unitofwork گذاشتم
این مشکل در وارد کردن اطلاعت در دیتابیس هم وجود داره.نمیتونم از فرم تو دیتابیس چیزی وارد کنم.فقط میتونم فعلا رفرش کنم صفحه رو و همچنین اطلاعت رو در دیتا گرید ویو ببینم.نمیدونم مشکل کجاست.الان 10بار ویدیو مربوط به deletرو دیدم ولی نمیشه.
الان من دقیق متوجه نشدم
ثبت میشه ولی لیست رفرش نمیشه ؟
یا کلا در بانک ثبت نمیشه ؟
کلا ففط تنها ارتباط من با بانک اطلاعاتی اینه که اطلاعت بانک رو روی دیتا گرید ویو میبینم.ولی من نمیتونم روی اطلاعت تغیراتی از جمله حذف و یا اطلاعات جدید وارد کنم.جالبتر اینکه من حتی نمیتونم از کامپوننت های validatorهم استفاده کنم.دقیقا مثل شما انجام دادم.ولی هنگام runکردن برنامه ازش خبری نمیشه.ربطی به ورژنd.netکه نداره.
costomerRipozitory چرا ورودی Context نداره ؟
استاد متوجه نشدم.منظورتون درunitofworkهستش.؟
استاد فهمیدم.ورودی نداشت.تشکر که روی مشکل من وقت گذاشتید.چند روز بود وقتمو گرفته بود.صدبار خط به خط مرور کردم.نمیدونم چطوری متوجه نشدم.انشالله تو کاراتون موفق باشید.