在删除之前验证数据是否包含来自另一个表的数据

本文关键字:数据 另一个 包含 是否 删除 验证 | 更新日期: 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))
相关文章: