[英]How to add data to SQL Server Express database using Entity Framework
我正在为我的大学写简单的程序。 我创建了一个实体框架模型,绘制图表,从模型创建数据库,在我的数据库上应用SQL文件,现在我正在尝试向数据库添加一些项目。
我是这样做的:
using (NewsletterEntities context = new NewsletterEntities())
{
Sender newSender = new Sender();
newSender.Login = Login.Text;
newSender.Password = Password.Text;
newSender.Port = 23;
newSender.SMTP = SMTP.Text;
newSender.Email = Email.Text;
newSender.SenderID = 0;
context.Senders.AddObject(newSender);
context.SaveChanges();
}
当我尝试执行它时会弹出内部异常:
当IDENTITY_INSERT设置为OFF时,无法在表'Senders'中为identity列插入显式值。
我试图寻找错误,但我不太了解实体框架,也找不到具体的东西。
有人可以帮忙吗?
该错误与Entity Framework无关,它与SQL Server有关,更具体地说是Identity列 。
我的猜测是SenderID
是一个标识列。 这意味着数据库负责为此字段分配顺序值,并且不允许为其指定值(除非您使用IDENTITY_INSERT
,否则会显示错误消息)。
因此,删除newSender.SenderID = 0;
代码中的行应解决问题。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.