मुझे ado.net इकाई ढांचे में linq के साथ कुछ समस्याएं आ रही हैं।लिनक्स से उत्पन्न इकाइयों एसक्यूएल
var results = (from c in companies
where c.Name.StartsWith(letter)
select c);
और कुछ इस तरह के रूप में SQL में अनुवाद किया जाता है: मूल रूप से क्या मैं कर रहा हूँ यह है
WHERE (CAST(CHARINDEX(@p, [Extent1].[Name]) AS int)) = 1
जो ठीक है, लेकिन अभी यह बहुत धीमी गति से चलाता है मेरी मेज रिकॉर्ड के लाखों लोगों की है।
WHERE Name LIKE @p + '%'
मैं उच्च और निम्न खोज रहा हूँ और करने के लिए या तो एक संग्रहीत प्रक्रिया या उपयोग इकाई एसक्यूएल ... का उपयोग
है वहाँ किसी भी छोड़कर किसी भी समाधान नहीं मिल सकता है: क्या मैं इसकी आवश्यकता उत्पन्न करने के लिए कुछ की तरह है linq के माध्यम से ऐसा करने का तरीका? संभावित रूप से linq प्रदाता इकाइयों के लिए linq विस्तार, या किसी भी तरह से आदेश पेड़ या उत्पन्न क्वेरी intercepting?
यह जो मुझे बहुत कुछ भी जो एसक्यूएल उत्पन्न करता है के पक्ष में अपना संग्रहीत प्रक्रिया परत फेंक relunctant बनाता है बात इस तरह का है। –