/ / LINQ to SQL - Wstaw nowy rekord - linq-to-sql

LINQ to SQL - Wstaw nowy rekord - linq-to-sql

Mam tabelę bazy danych z automatycznym zwiększaniemPole ID. ta tabela jest narażona na kod za pomocą modelu danych jednostki. Próbuję napisać nowy rekord do tej tabeli. Mam metodę, która musi być odpowiedzialna za tworzenie tych rekordów. Ta metoda przyjmuje wartości właściwości rekordu. Musi utworzyć rekord i napisać rekord odniesienia w innej tabeli. Obecnie oto, co próbuję

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();
}
}

Wydaje mi się, że nie mogę uzyskać w tym zapisiesposób. Udało mi się to zrobić, gdy zdałem rekord, który chciałem wstawić. Ale z powodu innych czynników potrzebuję sposobu na stworzenie tego rekordu od podstaw. Co ja robię źle?

Dziękuję Ci!

Odpowiedzi:

1 dla odpowiedzi № 1

powinien być AddToRecord() funkcja w kontekście bazy danych. Użyj tej funkcji, aby dodać swój record zmienna, a następnie wywołanie SaveChanges() z kontekstu bazy danych.