代码之家  ›  专栏  ›  技术社区  ›  Eric

什么导致此成员自动同步失败?

  •  1
  • Eric  · 技术社区  · 15 年前

    我有这张桌子:

    create table dbo.NotificationsIn
    (
        NotificationID varchar(18) primary key,
        ArrivalTime datetime not null default getdate()
    )
    

    我这样插入:

    public void InsertNotification(NotificationsIn notification)
    {
        db.NotificationsIns.InsertOnSubmit(notification);
        db.SubmitChanges();
    }
    

    其中db是Linq DataContext。

    在插入新记录后,我得到以下异常:

    System.InvalidOperationException:成员自动同步失败。对于插入后要自动同步的成员,类型必须具有自动生成的标识,或者具有插入后数据库未修改的键。

    在DBML中,我设置了arrivaltime属性autogenerated=true和auto-sync=oninsert。我也尝试过auto-sync=never,但结果是一样的。

    知道我为什么要得到这个例外吗? 谢谢您。

    1 回复  |  直到 15 年前
        1
  •  0
  •   Devart    15 年前

    尚未提供数据库层信息。
    最简单的解决方案是使notificationID列成为标识列。这应该有帮助。