मैं NHBernate.Linq का उपयोग करके इस क्वेरी का उत्पादन कैसे कर सकता हूं?NHibernate.Linq LIKE
WHERE this_.Name LIKE @p0; @p0 = 'test' // Notice NO % wild card
नोट, यह लिंक से एसक्यूएल या इकाई फ्रेमवर्क नहीं है। यह NHibernate है।
संपादित करें: का उपयोग कर ICriteria
यहाँ वांछित क्वेरी है:
criteria.Add(Expression.Like("Name", "test"));
return criteria.List<Theater>();
(प्रश्न में प्रदान की गई) मानदंड का उपयोग करना, मैं नहीं दिखाई दे रहा% वाइल्डकार्ड उत्पन्न किया जा रहा। – mxmissile
मैंने अभी यूनिट टेस्ट चलाया है जो मेरे पास दिए गए कोड के साथ है और उसने सर्क स्ट्रिंग पर दोनों सिरों में% वाइल्डकार्ड के साथ एक SQL कथन बनाया है। मैं मानदंड equilevant का उपयोग कर एक ही परीक्षण चलाता हूं और यदि मैं मानदंडों का उपयोग करता हूं तो मुझे सटीक उसी SQL कथन मिलता है। जोड़ें (अभिव्यक्ति। जैसे ("नाम", "परीक्षण", MatchMode.Anywhere)); मैं SQL सर्वर 2005 के साथ NHibernate 2.1 का उपयोग करता हूं। यदि आप एक ही कॉन्फ़िगरेशन का उपयोग कर रहे हैं तो आपको एक ही परिणाम देखने में सक्षम होना चाहिए। – tolism7
मुद्दा यह है कि मैं लिंकक का उपयोग कर वाइल्डकार्ड नहीं चाहता हूं। इस पर मेरी टिप्पणी आपके उत्तर का जवाब दे रही थी "आपके द्वारा प्रदत्त मानदंड स्निपेट का आउटपुट"। क्षमा करें अगर मैं स्पष्ट नहीं था। मैं प्रश्न में बताए गए अनुसार आईसीआरटीरिया के साथ वांछित क्वेरी प्राप्त कर सकता हूं, लेकिन लिंकक का उपयोग करके इसे प्राप्त नहीं कर सकता। – mxmissile