有人知道我如何链接我的 where 子句吗?
我想通过在第二个结果中找到的项目过滤我的主列表中的项目。
我有以下示例代码
@foreach (var artikel in Controller.Artikel
.Where(x => x.LieferantenArtikel
.Where(y => y.Lieferant.LieferantId == bestellung.LieferantId)
)
{
<option value="@artikel.Artikelnummer">@artikel.Artikelnummer</option>
}
Run Code Online (Sandbox Code Playgroud)
第一个.Where只是访问我的对象列表,它具有我需要的真正检查。
你链接的方式.Where()进入.Where()是技术上是正确的。问题是.Where()当前情况下的外部不会评估为布尔值。然而,这是一个要求。a 的目的.Where()是为一个集合定义一个过滤器,该过滤器产生该集合的一个子集。您可以检查.Any()项目是否满足该条件:
@foreach (var artikel in Controller.Artikel
.Where(x => x.LieferantenArtikel
.Any(y => y.Lieferant.LieferantId == bestellung.LieferantId))
)
{
<option value="@artikel.Artikelnummer">@artikel.Artikelnummer</option>
}
Run Code Online (Sandbox Code Playgroud)
.
| 归档时间: |
|
| 查看次数: |
101 次 |
| 最近记录: |