使用LINQPad将实体插入带有身份标识的SQL Compact 4表中

|| 我正在尝试使用LINQPad将新记录插入到SQL CE 4数据库中,并且遇到表标识问题。假设我有一个简单的表格,例如:
PEOPLE
Id int IDENTITY(1,1) NOT NULL,
Name nvarchar(100) NOT NULL
我可能以错误的方式做事,但是我在LINQPad中尝试过
People person = new Person { Name = \"Bob\" };
People.InsertOnSubmit(person);
SubmitChanges();
但是我得到了一个SqlCeException声明
\"The colum cannot be modified. [ Column name = Id ]\"
我可以使用SQL插入一条记录,该记录可以正常工作,并且SQL CE或其数据提供程序没有错误,并且SQL CE可以为我设置Id列,这正是我想要的
INSERT INTO PEOPLE (Name) VALUES (\'Bob\');
我还缺少其他步骤吗?我什至不确定这是否是LINQPad问题,但我想无论如何都会问,因为这就是我现在正在尝试使用的代码。     
已邀请:
        如果在LinqPad中运行此程序会得到什么
(from dm in this.Mapping.GetTable(typeof(People)).RowType.DataMembers 
    select new  { dm.DbType, dm.Name, dm.IsPrimaryKey , dm.IsDbGenerated }
 ).Dump();
特别是,据我了解,IsDbGenerated对于id列应为true。 我有一个我先前在LinqPad中使用过的SQL CE 3.5数据文件,并且查看为插入而生成的SQL并没有提及id     
        这可能是dbml文件的问题。检查该列是否标记为标识(或在L2S中称为“标识”)。问题是ID不能出现在插入查询中。     

要回复问题请先登录注册