context.SaveChanges()在添加时出错

Has*_*san 3 c# entity-framework entity-framework-5

使用此代码我没有错误

   public static void kirisekle(string kirisadi, int genislik, int derinlik, int uzunluk, int katid)
    {
        Beam newbeam = new Beam { Kirisadi = kirisadi, Geni?lik = genislik, Derinlik = derinlik, Uzunluk = uzunluk, KatID = katid };
        using (pehkEntities context = new pehkEntities())
        {

            context.Beams.Add(newbeam);
            context.SaveChanges();
        }
    }
Run Code Online (Sandbox Code Playgroud)

但是,使用此代码时出现"dbupdateexception未处理"错误

public static void dosemeekle(string dosemeadi, int en, int boy, int kalinlik, int katid)
    {
        Slab newslab = new Slab { DosemeAdi = dosemeadi, En = en, Boy = boy, Kal?nl?k = kalinlik, KatID = katid };
        using (pehkEntities context = new pehkEntities())
        {

            context.Slabs.Add(newslab);
            context.SaveChanges();
        }
    }
Run Code Online (Sandbox Code Playgroud)

我该如何找到此错误的原因并修复它?

我正在使用此代码来查看内部异常:

context.Slabs.Add(newslab);
        try
        {
            context.SaveChanges();
        }
        catch( System.Data.Entity.Infrastructure.DbUpdateException ex)
        {
            MessageBox.Show(ex.InnerException.Message);

        }
Run Code Online (Sandbox Code Playgroud)

但是,它显示消息框显示"更新条目时发生错误.有关详细信息,请参阅内部异常." 只要.

小智 9

尝试在SQL中查看表定义:

  • 是代码中提供的所有非空字段?

  • 异常发生时超出了字符串的长度

  • 你使用的是主键,它已经存在于数据库中吗?

如果没有连接问题,这些很可能是异常的原因.我假设第一种方法有效.