using (RapidWorkflowDataContext context = new RapidWorkflowDataContext()){var query = from w in context.WorkflowInstances从 c 在 context.Workflows其中 EmpWorkflowIDs.Contains((int)w.ID) &&w.CurrentStateID != c.LastStateID选择 w;返回 query.ToList();}
我有 2 个表:Workflows 和 WorkflowInstances.
用于存储对象的工作流和用于存储实例的工作流实例.
工作流表:ID、名称、FirstStateID、LastStateID
WorkflowInstances 表:ID,Name,WorkflowID,CurrentStateID
如何在 linq to sql 中编写查询以从 WorkflowInstances 中选择 CurrentStateID 不等于 LastStateID 的实例
你需要修改join在2个表之间的相关列上,然后你在where子句中添加你的条件,如下所示:
using (RapidWorkflowDataContext context = new RapidWorkflowDataContext()){var query = from w in context.WorkflowInstances在 w.WorkflowID 上的 context.Workflows 中加入 c 等于 c.ID其中 EmpWorkflowIDs.Contains((int)w.ID)&&w.CurrentStateID != c.LastStateID选择 w;返回 query.ToList();}
using (RapidWorkflowDataContext context = new RapidWorkflowDataContext())
{
var query = from w in context.WorkflowInstances
from c in context.Workflows
where EmpWorkflowIDs.Contains((int)w.ID) && w.CurrentStateID != c.LastStateID
select w;
return query.ToList();
}
I have 2 tables: Workflows and WorkflowInstances.
Workflows to store objects and workflowInstances to store instances.
Workflows Table: ID,Name,FirstStateID,LastStateID
WorkflowInstances Table: ID,Name,WorkflowID,CurrentStateID
How to write a query in linq to sql to select the instances from WorkflowInstances which CurrentStateID not equal LastStateID
You need to revise the join to be on the related columns between the 2 tables, then you add your condition in the where clause, like the following:
using (RapidWorkflowDataContext context = new RapidWorkflowDataContext())
{
var query = from w in context.WorkflowInstances
join c in context.Workflows on w.WorkflowID equals c.ID
where EmpWorkflowIDs.Contains((int)w.ID)
&& w.CurrentStateID != c.LastStateID
select w;
return query.ToList();
}
这篇关于如何在 linq to sql 中编写不等于运算符?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持html5模板网!