2013-07-26 3 views
16

में टेक (1) कैसे लिख सकता हूं, क्या यह IQueryable<MyObject> = query.Take(1) या LINQ क्वेरी सिंटैक्स में समतुल्य कुछ लिखना संभव है। मैं सी # 5 और ईएफ का उपयोग कर रहा हूं 5.मैं क्वेरी सिंटैक्स

+0

केवल वीबी.नेट के साथ। –

+1

दुर्भाग्यवश नहीं, सी # में वीबी के रूप में कई भाषाएं लिंक कीवर्ड नहीं हैं, लेकिन आप इसे बिना स्कीप (एन) जोड़कर बहुत गन्दा दिखने के बिना कर सकते हैं। अंत में (एम)। – Dai

+0

@TimSchmelter ओह शांत। जिज्ञासा से बाहर, वीबी.नेट में वाक्यविन्यास क्या है? –

उत्तर

17

के लिए वहाँ सी # में LINQ के लिए क्वेरी अभिव्यक्ति वाक्य रचना में Take करने के लिए कोई बराबर है। क्वेरी अभिव्यक्ति समकक्षों की एकमात्र विधियां

Where, 
Select, 
SelectMany, 
Join, 
GroupJoin, 
OrderBy, 
OrderByDescending, 
ThenBy, 
ThenByDescending, 
GroupBy, 
Cast 

यह विनिर्देश के §7.16.2 से है।

+3

मुझे नहीं पता था कि वहां 'संख्यात्मक। समूहजॉइन' था! –

8

नहीं। आपको उस ऑपरेशन के लिए डॉट सिंटैक्स का उपयोग करना होगा। एक ही चला जाता है ToList, Count, आदि ...

var query = 
    (from item in list 
    where predicate(item) 
    select func(item)) 
    .Take(10); 
संबंधित मुद्दे