में एक साधारण LINQ क्वेरी चलाना मैं अभी भी LINQ और PLINQ के लिए बहुत नया हूं। मैं आमतौर पर बहुत सारे मामलों में लूप और List.BinarySearch
का उपयोग करता हूं, लेकिन मैं उस मानसिकता से बाहर निकलने की कोशिश कर रहा हूं जहां मैं कर सकता हूं।समांतर
var matchedStaff = from s
in allStaff
where s.Matches(searchString)
select s;
लेकिन मैं समानांतर में यह करने के लिए करना चाहते हैं::
public class Staff
{
// ...
public bool Matches(string searchString)
{
// ...
}
}
का उपयोग करते हुए "सामान्य" LINQ - - माफ करना, मैं शब्दावली से अपरिचित हूँ मैं निम्न कर सकते हैं
var matchedStaff = allStaff.AsParallel().Select(s => s.Matches(searchString));
जब मैं matchedStaff
के प्रकार की जांच करता हूं, तो यह bool
एस की एक सूची है, जो मैं नहीं चाहता हूं।
सबसे पहले, मैं यहां क्या गलत कर रहा हूं, और दूसरी बात, मैं इस क्वेरी से List<Staff>
कैसे वापस कर सकता हूं?
public List<Staff> Search(string searchString)
{
return allStaff.AsParallel().Select(/* something */).AsEnumerable();
}
रिटर्न IEnumerable<type>
, नहीं List<type>
।
तुम अब भी PLINQ साथ क्वेरी सिंटैक्स (कि यह क्या कहा जाता है) का उपयोग कर सकते हैं: s से ' allStaff.AsParallel() में जहां s.Matchches (searchString) s' का चयन करें। – svick