मेरे पास एक फ़ंक्शन है जहां मुझे आईडी की एक सूची मिलती है, और मुझे विवरण के साथ मेल खाते एक सूची को वापस करने की आवश्यकता है जो आईडी के साथ जुड़ा हुआ है। उदाहरण के लिए:
public class CodeData
{
string CodeId {get; set;}
string Description {get; set;}
}
public List<CodeData> GetCodeDescriptionList(List<string> codeIDs)
//Given the list of institution codes, return a list of CodeData
//having the given CodeIds
}
इसलिए यदि मैं इसके लिए खुद ही sql बना रहा था, तो मैं बस निम्नलिखित की तरह कुछ करूँगा (जहाँ खंड में कोड मान में सभी मान शामिल हैं):
Select CodeId, Description FROM CodeTable WHERE CodeId IN ('1a','2b','3')
Linq में Sql करने के लिए मैं "IN" खंड के बराबर नहीं मिल सकता है। मैंने अब तक जो सबसे अच्छा पाया है (जो काम नहीं करता है) है:
var foo = from codeData in channel.AsQueryable<CodeData>()
where codeData.CodeId == "1" || codeData.CodeId == "2"
select codeData;
समस्या यह है कि, मैं गतिशील रूप से linq से sql के लिए "या" खंड की सूची उत्पन्न नहीं कर सकता, क्योंकि वे संकलन समय पर सेट हैं।
लाइनक को Sql का उपयोग करके मूल्यों की एक गतिशील सूची में स्तंभ की जांच करने वाले एक खंड को कैसे पूरा किया जाता है?