ले रहा COLOURS
वर्ग प्रकार के साथ एक IQueryable
सूचीलैम्ब्डा भाव से आदेश और इस मुद्दे को
IQueryable<COLOURS> renkler = dbcontext.colours.Select(s=>new COLOURS{ ....
मैं यादृच्छिक 2 पंक्तियाँ प्राप्त करना चाहते हैं, मैं इस कोड ब्लॉक का उपयोग कर रहा यह करने के लिए है:
renkler.OrderBy(o => Guid.NewGuid()).Take(2);
:
मैं 2 पंक्तियाँ लेकिन कभी कभी अपनी हो रही 3 पंक्तियों या 5 पंक्तियाँ चाहते
Take(2)
काम नहीं कर रहा है - समस्या क्या है?
मैं कुछ देखा है जब मैं
var result = NewProducts().OrderBy(o => Guid.NewGuid()).Take(2);
int result_count = result.Count(); //This value is 2 :D
//but ToList() result 5 :D
पूरे विधि की जाँच करें:
public IQueryable<COLOURS> NewProducts()
{
DateTime simdi = DateTime.Now;
DateTime simdi_30 = DateTime.Now.AddDays(-30);
var collection_products = DefaultColours()
.Where(w => ((w.add_date.Value >= simdi_30 && w.add_date.Value <= simdi) || w.is_new == true))
.OrderByDescending(o => o.add_date).Take(200)
.Select(s => new COLOURS
{
colour_code = s.colour_code,
model_code = s.products.model_code,
sell_price = (decimal)s.sell_price,
market_price = (decimal)s.market_price,
is_new = (bool)s.is_new,
product_id = (int)s.product_id,
colour_name = s.name,
product_name = s.products.name,
description = s.products.description,
img_path = s.product_images.FirstOrDefault(f => f.is_main == true).img_path,
category_id = (int)s.category_relations.FirstOrDefault().category_id,
display_order = (short)s.display_order,
section_id = (int)s.products.section_id,
stock_amount = s.pr_sizes.Where(w => w.is_active == true && w.quantity >= 0).Count() > 0 ? (int)s.pr_sizes.Where(w => w.is_active == true && w.quantity >= 0).Sum(s2 => s2.quantity) : 0,
section_name = s.products.pr_sections.name,
});
return collection_products;
}
public IQueryable<COLOURS> RandomNewProducts(int n)
{
var result = NewProducts().OrderBy(o => Guid.NewGuid()).Take(n);
int result_count = result.Count(); //2
//When I run this method it's getting 5 rows
return result;
}
ठीक है कि अंतिम क्वेरी को प्रभावित कर सकता है या नहीं। क्या आप 'परिणाम' को घुमाने पर दिखाए गए प्रश्न को भी दिखा सकते हैं? मैं कुछ चुनने की उम्मीद करता हूं जैसे 'चयन शीर्ष 2 * से चुनें (चुनें शीर्ष 200 * से ...)। – CodeCaster
@theEge: बहुत से लोग यहां आपकी सहायता करने की कोशिश कर रहे हैं, और वे सभी "मुझे कोड दिखाएं" कह रहे हैं। वे कोड चाहते हैं ताकि वे गलत होने के बारे में पता लगाने के लिए आपके लक्षणों का पुनरुत्पादन कर सकें। कृपया टिप्पणियों में आंशिक कोड स्निपेट डालने से रोकें - प्रश्न में अपने कोड की पूरी जानकारी डालें, अन्यथा आप बस हर किसी के समय बर्बाद कर रहे हैं। यदि आप कोड को कुछ आसान तक ट्रिम कर सकते हैं जो अभी भी समस्या को प्रदर्शित करता है, तो उतना ही बेहतर होगा। –
यह System.Linq.Enumerable पर Take() एक्सटेंशन विधि जैसा दिखता है, लेकिन क्या यह वास्तव में है? क्या यह एक अलग वर्ग पर एक ही नाम का एक और तरीका हो सकता है? कृपया संदर्भ/'उपयोग' कथन और DefaultColours() विधि सहित अपने सभी कोड पोस्ट करें। –