से मैं इस तरह एक मेज है (तालिका नाम: पोस्ट):इकाई की रूपरेखा प्रत्येक समूह से एक का चयन तारीख
+----+--------------------------+-------+------------+
| id | content | type | date |
+----+--------------------------+-------+------------+
| 0 | Some text | TypeA | 2013-04-01 |
| 1 | Some older text | TypeA | 2012-03-01 |
| 2 | Some even older texttext | TypeA | 2011-01-01 |
| 3 | A dog | TypeB | 2013-04-01 |
| 4 | And older dog | TypeB | 2012-03-01 |
| 5 | An even older dog | TypeB | 2011-01-01 |
+----+--------------------------+-------+------------+
एक LINQ अभिव्यक्ति मैं प्रत्येक प्रकार के नवीनतम सामग्री खोजने के लिए चाहते हैं का उपयोग करना है, तो परिणाम
Some text | TypeA
A dog | TypeB
मैंने कुछ चीजों की कोशिश की है लेकिन गैर-कार्यशील अभिव्यक्तियों को इंगित करने में कोई बात नहीं है।
क्या समूह क्वेरी चलाने से पहले या बाद में चलाया जाता है? तो क्या यह प्रत्येक पंक्ति को डीबी से खींच देगा, फिर उन्हें समूहित करेगा या क्या यह क्वेरी में कथन द्वारा समूह जोड़ देगा ताकि केवल समूहीकृत पंक्तियों को खींच सके? – Samir
@ सैमिर: यह वास्तव में वास्तव में एक अच्छा मुद्दा है। ऐसा लगता है कि ईएफ पर संस्करण के आधार पर अलग-अलग व्यवहार हैं। ईएफ 7 क्लाइंट को डेटा लोड करने लगता है और वहां समूहबद्ध करता है: https://stackoverflow.com/questions/11564311/sql-to-entity-framework-count-group-by। लगता है कि ईएफ कोर में एसक्यूएल समूह के लिए समर्थन है: https://github.com/aspnet/EntityFrameworkCore/pull/9872। इसकी पुष्टि करने के लिए, आप वास्तविक एसक्यूएल क्वेरी देखने के लिए एक प्रोफाइलर का उपयोग कर सकते हैं। –
@ सैमिर: यदि आप ईएफ कोर नवीनतम संस्करण का उपयोग कर रहे हैं और प्रदर्शन स्वीकार्य है, तो आप इस समाधान पर विचार कर सकते हैं भले ही एसक्यूएल क्वेरी समूह का उपयोग न करे (किसी फ़ंक्शन में कोड को लपेटें ताकि हम आवश्यक होने पर बाद में रिफैक्टर कर सकें) ऐसा लगता है कि लोगों ने इसे ध्यान में रखा है और बाद में रिलीज इस का समर्थन कर सकते हैं। अन्यथा, आपको कच्ची एसक्यूएल क्वेरी लिखनी है। –