问题描述
|
我有一个带有自动递增ID字段的数据库表。该表通过实体数据模型通过代码公开。我正在尝试向该表写入新记录。我有一种方法需要负责创建这些记录。此方法接受记录的属性值。它需要创建一条记录,并在另一个表中写入参考记录。目前,这是我正在尝试的
public int CreateRecord(string name,string description,List<int> ids)
{
using (DatabaseContext database = new DatabaseContext())
{
Record record = new Record();
record.Name = name;
record.Description = description;
database.Records.InsertOnSubmit(record);
database.SubmitChanges();
List<RecordTrack> tracks = new List<RecordTrack>();
foreach (int id in ids)
{
RecordTrack track = new RecordTrack();
track.RecordID = record.ID;
track.ID = id;
tracks.Add(track);
}
database.Tracks.InsertAllOnSubmit(tracks);
database.SubmitChanges();
}
}
我似乎无法以这种方式保存记录。当我通过要插入的Record时,我能够做到。但是由于其他因素,我需要一种从头开始纯粹创建记录的方法。我究竟做错了什么?
谢谢!
解决方法
您的数据库上下文中应该有一个“ 1”函数。使用该函数添加
record
变量,然后从数据库上下文中调用SaveChanges()
。