مشکل در ذخیره اطلاعات در بانک
با سلام
دوستان من کد نوشتم برای ذخیره اطلاعات در دیتابیس
فقط وقتی روی ثبت میزنم این ارور ظاهر میشه ؟
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)
{
}
}
}
1 پاسخ
با سلام. دوست عزیز ، نوشته See the inner exception
خطای موجود در InnerException رو هم ارسال کنید تا بشه بهتر راهنمایی کرد