在删除之前验证数据是否包含来自另一个表的数据
本文关键字:数据 另一个 包含 是否 删除 验证 | 更新日期: 2023-09-27 18:11:54
我需要在删除参数之前验证它是否包含任何值。参数在另一个表中,值在另一个表中。我正在尝试使用lambda表达式,但只是找不到正确的方式。这将从CalculationParameters表中获取数据:
Factory.Definitions.CalculationParameters.List(); // List() lists all the data.
从CalculationParametersValues表中获取数据:
Factory.Definitions.CalculationParametersValues.List(); // List() lists all the data.
现在,如果"Id"(来自CalculationParameter)等于"CalculationParameterId"(来自CalculationParametersValue)意味着CalculationParameter包含值,我不能删除它。
有谁能帮我一下吗?
我理解您想要删除在CalculationParametersValues中没有记录的所有CalculationParameters。如果是这样,请尝试这样做:
CalculationParameters.RemoveAll(p=> !(CalculationParametersValues.select(c=> c.CalculationParameterId)).contains(p.CalculationParameterId))
如果我理解你想检查是否在CalculationParameters中的id存在于CalculationParametersValues
你可以试试这个
bool exist =Factory.Definitions.CalculationParameters.List()
.Any(a=> Factory.Definitions.CalculationParametersValues.List().Any(b=>b.Id ==a.Id))