gpt4 book ai didi

c# - LINQ查询将ID与SingleOrDefault查询中的列表中的ID进行比较

转载 作者:太空宇宙 更新时间:2023-11-03 18:05:41 24 4
gpt4 key购买 nike

我正在尝试使用SingleOrDefault Linq to SQL方法获取一个选项。

 var po = repository.Context.AsQueryable<Option>().SingleOrDefault(o => o.Option.Id == sp.Options // sp.Options is a collection);


问题是在SingleOrDefault方法内部,我正在比较p.Option.Id ==集合。我想要的是从与o.Option.Id匹配的sp.Options中选择选项。我怎样才能做到这一点?

更新:
我应该提到的一件事是sp.Options是与Option类不同的类。 sp.Options是SPOptions类,因此无法在contains方法内传递它。

最佳答案

看看Contains

repository.Context.AsQueryable<Option>().SingleOrDefault(o => sp.Options.Contains(o.Option.Id));


如果Options不是Option.Id类的集合,则可以将 Any方法与比较逻辑一起使用,如下所示:

repository.Context.AsQueryable<Option>().SingleOrDefault(o => sp.Options.Any(opts => opts.Something == o.Option.Id));

关于c# - LINQ查询将ID与SingleOrDefault查询中的列表中的ID进行比较,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31144978/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com