#entity-framework #asp.net-core #entity-framework-core
#entity-framework #asp.net-core #entity-framework-core
Вопрос:
У меня есть следующая структура базы данных:
CREATE SEQEUENCE post_id_seq INT START WITH 1;
CREATE TABLE topics
(
topic_id INT DEFAULT NEXT VALUE FOR post_id_seq PRIMARY KEY
);
CREATE TABLE posts
(
post_id INT DEFAULT NEXT VALUE FOR post_id_seq PRIMARY KEY,
topic_id INT
);
Каждая тема имеет «сообщение темы» (идентифицируется при topic_id = post_id
).
Как мне сделать так, чтобы при создании темы я мог одновременно создавать сообщение, и topic_id
и post_id
при запуске были правильно назначены SaveChanges
?
Что-то вроде приведенного ниже:
var topic = db.Topics.Add();
var post = db.Posts.Add() { PostId = topic.TopicId, TopicId = topic.TopicId };
db.SaveChanges();
Ответ №1:
Есть ли в теме коллекция сообщений? Если это произойдет, должно сработать следующее:
var topic = new Topic()
var postForTopic = new Post();
topic.Posts.Add(postForTopic);
db.Topics.Add(topic);
db.SaveChanges();