में मैं ItemNumber
द्वारा मेरी LINQ क्वेरी समूह चाहते और Quantity
के लिए कुल के साथ पूरे तालिका लौट आते हैं।लैम्ब्डा अभिव्यक्ति ग्रुप सी #
public IQueryable<WebsiteOrderStatus> GetOrderStatusByAccountNumberWithoutDeleted
(string accountNumber)
{
return db.WebsiteOrderStatus
.Where(x => x.AccountNumber == accountNumber && x.LastUpdatedStatus != 1);
}
और मेरे सबसे अच्छे परिणाम अब तक (हालांकि इस संकलन नहीं कर सकता):
public IQueryable<IGrouping<Int32?, WebsiteOrderStatus>> lol(string accountNumber)
{
db.WebsiteOrderStatus
.Where(x => x.AccountNumber == accountNumber && x.LastUpdatedStatus != 1)
.GroupBy(g => g.ItemNumber)
.Select(g => new
{
g.Key.ItemNumber,
Column1 = (Int32?)g.Sum(p => p.Quantity)
});
}
संपादित करें:
Example:
ItemNumber - ItemName - Quantity
100 Item1 1
150 Item2 2
100 Item1 2
200 Item3 1
150 Item2 2
Should be:
ItemNumber - ItemName - Quantity
100 Item1 3
150 Item2 4
200 Item3 1
इस क्वेरी मैं समूह के लिए कोशिश कर रहा हूँ है
उत्तर हर किसी के लिए धन्यवाद, मैं यह सामना करना होगा। थीस अज्ञात प्रकार मेरी राय में काम करने के लिए बहुत कठिन हैं, इसलिए मुझे एक और समाधान मिला।
मैं एक और तरीका है, जो उपयोगकर्ताओं हुई वस्तुओं की मात्रा का योग बना दिया है और पहले एक वर्गीकृत किया।
public IQueryable<WebsiteOrderStatus> GetOrderStatusByAccountNumberWithoutDeleted(string accountNumber)
{
return db.WebsiteOrderStatus.Where(x => x.AccountNumber == accountNumber && x.LastUpdatedStatus != 1).GroupBy(x => x.ItemNumber).Select(grp => grp.First());
}
public int GetQuantityOfUsersItem(string accountNumber, string itemNumber)
{
return db.WebsiteOrderStatus.Where(x => x.ItemNumber == itemNumber && x.AccountNumber == accountNumber).Sum(x => x.Quantity);
}
पेज पर
जहां मैं अपने gridview है मैंने किया:
var query = websiteOrderStatusRep.GetOrderStatusByAccountNumberWithoutDeleted(AppSession.CurrentLoginTicket.AccountNumber).Select(x => new { x.ItemName, x.ItemNumber, x.FormatName, x.Price, x.Status, x.Levering, Quantity = websiteOrderStatusRep.GetQuantityOfUsersItem(x.AccountNumber, x.ItemNumber)});
सुनिश्चित नहीं हैं और क्या गलत है, लेकिन बहुत कम से कम, आप 'मेरा उत्तर तय दूसरे नमूने में 'वापसी' गायब हो रहा है। – Ani
आपको संकलित त्रुटि क्या मिल रही है? –
शायद वह जी.के को किसी ऑब्जेक्ट के रूप में पेश करने का प्रयास कर रहा है, जबकि यह सिर्फ int है। यदि वह परिणाम में आइटम का नाम चाहता है तो उसे इसे मुख्य ऑब्जेक्ट में भी स्टोर करना होगा (और चाबियों को एक ऑब्जेक्ट जो तुलनीय है) या इसे समूह एनम्बरेटर में पहली प्रविष्टि से पढ़ें। – Rup