網申請。我有一個帶有子物體的物體。我必須根據子物體值進行過濾。例如在下面的查詢中,
var sourceProposal = proposals.ProposalResults.Where(x => x.Quotes.All(c => c.QuotationId.ToLower().Trim() == sourceQuoteId.ToLower().Trim()));
我有輸入引數 sourceQuoteId ,它存在于子表引號中。這里的父表是提案。所以會有多個提案,每個提案都有多個報價。想法是根據報價 ID 過濾提案。只要只存在一個引號,上面的查詢就可以正常作業,但當有多個引號時它不會過濾。有人可以幫我根據子表進行過濾嗎?
uj5u.com熱心網友回復:
如果您想要的是帶有任何滿足標準的報價的提案,您似乎應該打電話Any而不是打電話。All
uj5u.com熱心網友回復:
僅當集合中有 1 個結果時才使此功能起作用的原因是因為您使用的是 All 運算子,All 運算子用于檢查序列中的所有元素是否滿足給定條件。
您要使用的是 Any 運算子,Any 運算子用于檢查序列中的任何單個元素是否滿足給定條件。
您的查詢應該是:
var sourceProposal = proposals.ProposalResults
.Where(x => x.Quotes.Any(c => c.QuotationId.ToLower().Trim() == sourceQuoteId.ToLower().Trim()));
uj5u.com熱心網友回復:
試試這個:
var sourceProposal = proposals.ProposalResults.Where(x => x.Quotes.Any(c => c.QuotationId.ToLower().Trim() == sourceQuoteId.ToLower().Trim()));
轉載請註明出處,本文鏈接:https://www.uj5u.com/houduan/470996.html
