如果类型为“DtContract”,我有一个数组列表。
ArrayList listOfContracts_;
foreach (DTContract contract in listOfContracts_)
{
if (contract.Engine != DTIsland.EngineType.AMADEUS && contract.Engine !=DTIsland.EngineType.SABRE)
continue;
}
我想通过LINQ来做。
我想过滤EngineType == AMADEUS && EngineType == SABRE
的合同。请建议我如何通过Linq完成它并将结果列在List或数组列表中。
我这样做是为了优化代码。
请帮助......
答案 0 :(得分:1)
var result = listOfContracts_.Where(contract=>contract.Engine != DTIsland.EngineType.AMADEUS && contract.Engine !=DTIsland.EngineType.SABRE).ToList();
答案 1 :(得分:0)
你的foreach循环没有做任何有意义的事情,你正在尝试实现什么?
如果你想使用linq
listOfContracts_.OfType<DTContract>()
.Where(contract => contract.Engine != DTIsland.EngineType.AMADEUS &&
contract.Engine != DTIsland.EngineType.SABRE);