मैं IQueryable
का निर्माण कर रहा हूं जहां मैं प्रासंगिक फ़िल्टर लागू कर रहा हूं, और मैं यहां कोड की इस पंक्ति में आया हूं।इकाई फ्रेमवर्क + एसक्यूएल इंजेक्शन
items = items.OrderBy(string.Format("{0} {1}", sortBy, sortDirection));
क्या यह स्निपेट एसक्यूएल इंजेक्शन के लिए कमजोर है? या ये (स्ट्रिंग) पैरामीटर दृश्यों के पीछे पैरामीटरकृत हैं? मैंने माना कि सभी लिंक प्रश्नों से बच निकला और मेरे लिए पैरामीटर किया गया, लेकिन तथ्य यह है कि मैं इस तरह एक स्ट्रिंग में सीधे पास करने में सक्षम हूं, मुझे फेंक रहा है।
आप के लिए कि बयान काम करता है? क्या आपके पास इसे लागू करने वाला स्थिर विस्तार विधि है? मैं 'ऑर्डरबी' से लम्बा अभिव्यक्ति नहीं ले रहा हूं। – sgeddes
यह एक्सटेंशन 'System.Linq.Dynamic' नामस्थान में स्थित था। एक विधि हस्ताक्षर 'स्थिर IQueryable OrderBy साथ (इस IQueryable स्रोत, स्ट्रिंग आदेश, [] मूल्यों आपत्ति पैरामीटर)'। –
alexhuang
सिस्टम की तरह दिखता है .Linq.Dynamic CodePlex पर होस्ट की गई एक ओपन-सोर्स प्रोजेक्ट है। स्रोत कोड http://dynamiclinq.codeplex.com/SourceControl/latest#DynamicLinq/System.Linq.Dynamic/Dynamic.cs पर है। जो मैं देख सकता हूं उससे वे स्ट्रिंग डेटा ले रहे हैं और अभिव्यक्ति वृक्ष को संशोधित करने के लिए इसका उपयोग कर रहे हैं, नहीं, यह एसक्यूएल इंजेक्शन के लिए कमजोर नहीं है। –