C# 如何将所有记录合并为2个记录并删除所有未合并的记录?

C# 如何将所有记录合并为2个记录并删除所有未合并的记录?,c#,asp.net,entity-framework,C#,Asp.net,Entity Framework,我使用以下代码组合(使用逗号)具有相同症状类型的输入记录。现在的问题是我可以将记录合并并插入数据库,但如何从“nPG_Chemical.nPG_Chemical_症状”中删除这些未合并的记录? 对于每个基本记录,查找base.Symptom\u Type包含来自当前验证记录的Symptom\u Type的所有记录 我不确定是否正确理解了您的要求。看起来你想要的只是 按症状类型组合记录并将其插入数据库后,您希望删除原始记录 如果这是你想要的,你可以这样做 db.YourTable .Re

我使用以下代码组合(使用逗号)具有相同症状类型的输入记录。现在的问题是我可以将记录合并并插入数据库,但如何从“nPG_Chemical.nPG_Chemical_症状”中删除这些未合并的记录?


对于每个基本记录,查找base.Symptom\u Type包含来自当前验证记录的Symptom\u Type的所有记录

我不确定是否正确理解了您的要求。看起来你想要的只是

按症状类型组合记录并将其插入数据库后,您希望删除原始记录

如果这是你想要的,你可以这样做

db.YourTable
    .RemoveRange(db.YourTable
                    .Where(x => !x.Symptom_Text.Contains(",")));

您所说的“未组合”记录是什么意思?@ArghyaC没有“,”。NPG_Chemical_Symptoms是ICollection您使用db上下文以相同的逻辑运行它。是的,我尝试将其更改为db.NPG_Chemical_Symptom.RemoveRange(db.NPG_Chemical_Symptom.Where(x=>!x.Symptom_Text.Contains(“,”);但如果一种类型只有一条记录,那么就不会有“,”。我不想把它们也拿走,好的。然后,根据您的表模式,可能会有不同的解决方案。例如,[1]如果表具有自动增量id,则可以在添加组合结果之前存储最后一个id。然后删除所有id为delete all from table的记录->将本地数据与逻辑相结合->将它们插入数据库。谢谢!也许这不是一个好方法,但它正是我想要的。
db.YourTable
    .RemoveRange(db.YourTable
                    .Where(x => !x.Symptom_Text.Contains(",")));