50٪ تخفیف روی تمام دوره‌ها!
پایان تخفیف تا:
مشاهده دوره‌ها
0

مشکل در ذخیره اطلاعات در بانک

با سلام

دوستان من کد نوشتم برای ذخیره اطلاعات در دیتابیس

فقط وقتی روی ثبت میزنم این ارور ظاهر میشه ؟

An unhandled exception of type 'System.Data.Entity.Infrastructure.DbUpdateException' occurred in EntityFramework.dll

Additional information: An error occurred while updating the entries. See the inner exception for details.


و کد من هم به صورت زیر هست :


using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms;
using DevComponents.DotNetBar;

namespace chitsaz_erp
{
    public partial class frm_es_group : Office2007Form
    {
        public frm_es_group()
        {
            InitializeComponent();
        }


        /////////////////////////////////////////////////////ساخت دیتاگرید
        void display ()
        {
            chitsaz_repEntities1 db = new chitsaz_repEntities1();
            dataGridViewX1.DataSource = db.tbl_estekhdam_group.ToList();
            dataGridViewX1.Columns[0].HeaderText = "کد گروه";
            dataGridViewX1.Columns[1].HeaderText = "نوع استخدام";
            dataGridViewX1.Columns[1].Width = 200;
            dataGridViewX1.Columns[2].Visible = false;
            dataGridViewX1.Columns[3].Visible = false;
            dataGridViewX1.Columns[4].Visible = false;
        }
        /////////////////////////////////////////////////////////////////////

        void maxid()
        {
            var maxf = db1.tbl_estekhdam_group.Select(u => u.estekhdam_group_id).DefaultIfEmpty(0).Max();
            string id = Convert.ToString(maxf);
            if (id == "") 

            txt_id.Text = "1"; 
            

            else
            {
                Int64 idfinal = 1 + Int64.Parse(id);
                txt_id.Text = idfinal.ToString();

            }
        }


            /////////شناسایی بانک اطلاعاتی
        chitsaz_repEntities1 db1 = new chitsaz_repEntities1();
        //////////////////////////////

        private void frm_es_group_Load(object sender, EventArgs e)

        {
            /////////////////////نمایش دیتاگرید در فرم لود برنامه
            display();
            //////////////////////////////////////////////////////////
            maxid();


            //دستورات تاریخ
            System.Globalization.PersianCalendar p = new System.Globalization.PersianCalendar();
            lbl_date.Text = p.GetYear(DateTime.Now).ToString() + "/" + p.GetMonth(DateTime.Now).ToString("0#") + "/" +p.GetDayOfMonth(DateTime.Now).ToString("0#");
            
            //


            //if (txt_name.Text == string.Empty)
            //{ errorProvider1.SetError(txt_name, "نمی تواند خالی باشد"); return; }
            //else
            //{ errorProvider1.Clear(); }
        }

        private void btn_sabt_Click(object sender, EventArgs e)
        {

            /////////////////تعریف بانک اطلاعاتی
            tbl_estekhdam_group tbl = new tbl_estekhdam_group();
            //////////////////////////////////////

            //////////////////ذخیره اطلاعات فیلدها در بانک اطلاعاتی
            tbl.estekhdam_group_id = Convert.ToInt32(txt_id.Text);
            tbl.estekhdam_group_name = txt_name.Text;
            //tbl.estekhdam_group_date = lbl_date.Text;
           // tbl.estekhdam_group_date = lbl_time.Text;
            //tbl.estekhdam_group_date = lbl_user.Text;
            db1.tbl_estekhdam_group.Add(tbl);
            db1.SaveChanges();
            MessageBox.Show("اطلاعات با موفقیت ذخیره شد");
        }

        //////////////////////////////////////////////////////////////


        private void timer2_Tick(object sender, EventArgs e)
        {
            //دستورات نمایش ساعت
            lbl_time.Text = DateTime.Now.Hour.ToString();
            lbl_time.Text += ":";
            lbl_time.Text += DateTime.Now.Minute.ToString();
            lbl_time.Text += ":";
            lbl_time.Text += DateTime.Now.Second.ToString();
            //
        }

        private void btn_delete_Click(object sender, EventArgs e)
        {
            if (dataGridViewX1.RowCount==0) return;

            if (MessageBox.Show("از حذف اطلاعات مطمئن هستید؟", "تایید حذف", MessageBoxButtons.YesNo, MessageBoxIcon.Question) == DialogResult.Yes) ;
            {
                tbl_estekhdam_group tbl = new tbl_estekhdam_group();
                tbl = db1.tbl_estekhdam_group.Find(Convert.ToInt32(txt_id.Text));
                db1.tbl_estekhdam_group.Remove(tbl);
                db1.SaveChanges();
                display();
                MessageBox.Show("اطلاعات حذف گردید");
                

            }
        }

        private void lbl_date_Click(object sender, EventArgs e)
        {

        }
    }
}


پرسیده شده در 1401/04/20 توسط

1 پاسخ

0

با سلام. دوست عزیز ، نوشته See the inner exception

خطای موجود در InnerException رو هم ارسال کنید تا بشه بهتر راهنمایی کرد

پاسخ در 1401/04/20 توسط

پاسخ شما