我有一个包含三个表的实体上下文。第一个是包含产品的表,第二个包含食谱。连接表包含产品和配方表中ID的字段以及称为“特色”的“位”字段。
我已经搜索过,并没有找到关于如何仅插入如何针对此类场景进行选择的示例。是否有人对如何做到这一点有任何建议?提前感谢您的帮助。
答案 0 :(得分:2)
我暂时没有做C#,所以我不确定我的语法是否有效,无论如何这应该是这个想法:
Products product = new Products { Blah, Blah, Blah };
bool flag = false;
for (int i = 0; i < 5; i++)
{
Products_Receipes pr = new Products_Receipes
{ Products = product, IsFeatued = flag };
pr.Receipes.Add(new Receipes());
pr.Receipes.Add(new Receipes());
flag = !flag;
}
Context.SaveChanges();
如果上述方法不起作用,那么让我告诉您必须创建主要项目(产品或食谱),然后在创建Products_Receipes
时设置它Products
/ Receipes
属性到上面(或Products.Pruducts_Receipes.Add(pr)
),然后以相同的方式添加关系的另一面。
答案 1 :(得分:0)
观察结果是,您的图表的结构更像是数据库架构,而不是实体图。实体的设计应满足独立于数据存储结构的业务需求,以便您可以使用任何数据库来存储数据。
我相信您可以删除“链接”实体,并在产品和食谱之间设置一对多或多对多关联。然后使用链接表设置数据库模式并相应地执行表映射。