Я использую сущность framework 4.1 (VS 2010, SQL Server 2012) для вставки данных в базу данных. Сначала я создаю экземпляр объекта, заполнить свойства со значениями и называют AddObject(), как это:Получение значения столбца идентификатора с использованием структуры сущностей 4.1
VideoData videodata = new VideoData();
videodata.StartCaptureTime = startCaptureTime;
videodata.EndCaptureTime = endCaptureTime;
videodata.CameraID = CameraID;
using (var context = new PercEntities())
{
if (context.VideoDatas.Where(c => c.VideoID == videoID).Count() == 0)
{
var videoData = new VideoData
{
StartCaptureTime = startCaptureTime,
EndCaptureTime = endCaptureTime,
CameraID = CameraID,
};
context.VideoDatas.AddObject(videoData);
context.SaveChanges();
}
}
Дело в том, что таблица в базе данных имеет столбец идентификаторов:
VideoID int IDENTITY(1,1)
и мне нужно получить значение, введенное функцией идентификации, чтобы заполнить дополнительные объекты, имеющие VideoID в качестве внешнего ключа. например:
FrameData frameData = new FrameData();
frameData.VideoID = videodata.VideoID;
frameData.Path = path;
Единственное, что я мог думать только о том, чтобы запросить для максимальной идентичности сразу после AddObject (видеоданными), но боюсь условий гонки.
Я новичок в платформе Entity Framework, поэтому буду рад за любое руководство по этому вопросу.
Спасибо за быстрый ответ. Это была проблема конфигурации. – Omri374