簡體   English   中英

Linq查詢不返回數據

[英]Linq query does not return data

我在SQL中有以下查詢,該查詢返回5行數據:

SELECT DISTINCT c.Id, c.FirstName, c.LastName, c.PhoneNumber, 'Waiting to be sent'
FROM DistributionGroupMembers dgm
JOIN Contacts c on dgm.ContactId = c.Id
JOIN DistributionGroups dg on dgm.DistributionGroupId = dg.Id
WHERE dg.Id IN (
    SELECT DistributionGroupId
    FROM DistributionGroupInSms
    WHERE SmsId = 40
)

當我嘗試使用LINQ在C#中運行適當的查詢時,它將不會返回任何內容:

int[] groupIDs = await _db.DistributionGroupInSms.Where(dgis => dgis.SmsId == message.Id).Select(g => g.Id).ToArrayAsync();
var recipients = await (from dgm in _db.DistributionGroupMembers
                        join c in _db.Contacts on dgm.ContactId equals c.Id
                        join dg in _db.DistributionGroups on dgm.DistributionGroupId equals dg.Id
                        where groupIDs.Contains(dg.Id)
                        select new
                        {
                            ID = c.Id,
                            FN = c.FirstName,
                            LN = c.LastName,
                            PN = c.PhoneNumber,
                            SR = "Waiting to be sent"
                        }).Distinct().ToListAsync();

我究竟做錯了什么?

您可以簡單地加入:

int[] groupIDs = await _db.DistributionGroupInSms.Where(dgis => dgis.SmsId == message.Id).Select(g => g.Id).ToArrayAsync();
var recipients = await (from dgm in _db.DistributionGroupMembers
                        join c in _db.Contacts on dgm.ContactId equals c.Id
                        join dg in _db.DistributionGroups on dgm.DistributionGroupId equals dg.Id
                        join gIds in groupIDs on gIds equals dg.Id
                        select new
                        {
                            ID = c.Id,
                            FN = c.FirstName,
                            LN = c.LastName,
                            PN = c.PhoneNumber,
                            SR = "Waiting to be sent"
                        }).Distinct().ToListAsync();

我在select子句中通過獲取我選擇的Id而不是表中名為DistributionGroupId的另一個字段的groupIDs 謝謝大家的投入

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM