0

我试图用这样的查询过滤可观察的集合

var IEquip = from eq in this.reportDocument.Document.InspectionData.Equipments where eq.PartData.ReportIncluded = true
                             orderby eq.PartData.Order ascending
                             select eq;

这似乎可行,但是当我尝试通过 IEquip 进行迭代时

foreach (EquipmentItem eq in IEquip)
{
....
}

所有 ReportIncluded 都设置为 true,我可以看到 ReportIncluded 上的 setter 被调用。我已经清空了循环内的逻辑,结果相同。所有 ReportInclude 都在循环的第一次迭代中设置。我错过了什么

4

2 回答 2

4

您正在使用赋值运算符而不是相等:

eq.PartData.ReportIncluded = true
// instead of
eq.PartData.ReportIncluded == true
于 2012-07-08T19:54:35.120 回答
3

不要混淆===。实际上没有必要将布尔值与trueandfalse文字进行比较(除非它是一个可为的布尔值)。所以也许你可以不写where eq.PartData.ReportIncluded任何东西== true

于 2012-07-08T19:55:35.943 回答