Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/321.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 我怎样才能写这句话;其中;以下LINQ to SQL查询中的子句?_C#_Linq_Linq To Sql - Fatal编程技术网

C# 我怎样才能写这句话;其中;以下LINQ to SQL查询中的子句?

C# 我怎样才能写这句话;其中;以下LINQ to SQL查询中的子句?,c#,linq,linq-to-sql,C#,Linq,Linq To Sql,我正在处理以下LINQ查询: public void GetAuditRuleAgencyRecords(IEnumerable<Entities.AuditRule> rules) { using (LinqModelDataContext db = new LinqModelDataContext()) { var auditAgencyRecords = (from ag in db.Agencies

我正在处理以下LINQ查询:

public void GetAuditRuleAgencyRecords(IEnumerable<Entities.AuditRule> rules)
{
    using (LinqModelDataContext db = new LinqModelDataContext())
    {
        var auditAgencyRecords = (from ag in db.Agencies
                        join ara in db.AuditRuleAccounts on ag.Agency_Id equals ara.AgencyID
                        join arr in db.AuditRuleResults on ara.AuditRuleAccountID equals arr.AuditRuleAccountID
                        join are in db.AuditRuleEnterprises on arr.AuditRuleEnterpriseID equals are.AuditRuleEnterpriseID
                        select new
                        {

                            AgencyID = ag.Agency_Id,
                            AgencyName = ag.Agency_Name,
                            AuditRuleEnterpriseID = arr.AuditRuleEnterpriseID,
                            CorrectedDate = arr.CorrectedDate,
                            NbrDaysToCorrect = arr.NbrDaysToCorrect,      

                        }).ToList();
    }
}
public void GetAuditRuleAgencyRecords(IEnumerable规则)
{
使用(LinqModelDataContext db=new LinqModelDataContext())
{
var auditAgencyRecords=(来自ag,单位为db.Agencies
将ara加入ag.Agency_Id等于ara.AgencyID的db.AuditRuleAccounts
在ara上的db.AuditRuleResults中加入arr.AuditRuleAccountID等于arr.AuditRuleAccountID
联接在arr.AuditRuleEnterpriseID上的db.AuditRuleEnterpriseID中等于are.AuditRuleEnterpriseID
选择新的
{
AgencyID=ag.Agency\u Id,
AgencyName=ag.Agency\u Name,
AuditRuleEnterpriseID=arr.AuditRuleEnterpriseID,
校正日期=arr.CorrectedDate,
NbrDaysToCorrect=arr.NbrDaysToCorrect,
}).ToList();
}
}
你可以看到,我正在传递一个数不清的规则。我传入的每个AuditRule对象都有一个名为“ID”的属性

如果我想说,只返回表列AuditRuleEnterprise.Audited与我的规则“ID”属性(我已传递到方法中的对象)中的任何一个ID匹配的记录,我的where子句对此查询会是什么样子

.Where(rules.Select(r => r.ID).Contains(arr.AuditRuleEnterpriseID.AuditID))
或者,在查询语法中

where rules.Select(r => r.ID).Contains(arr.AuditRuleEnterpriseID.AuditID)
尝试:

或者,在查询语法中

where rules.Select(r => r.ID).Contains(arr.AuditRuleEnterpriseID.AuditID)

实际上,linqtosql将其扩展为IN表达式。实际上,linqtosql将其扩展为IN表达式。