如何在C#中用EF编写此存储过程?
CREATE PROCEDURE FilterDocumentByNumber
@Number NVARCHAR(30)
AS
BEGIN
SELECT *
FROM Document
WHERE DocumentNumber = @Number
AND CostGroupId IN (SELECT CostGroupId
FROM CostGroups
WHERE CostGroupType = 1)
END
由于
答案 0 :(得分:1)
当你把所有东西扔到这里并期望人们为你完成工作时,SO不是一个网站。
无论如何,为了给你一些提示,我给你一个直截了当的建议:
Select CostGroupId From CostGroups Where CostGroupType = 1
- >将它们存储在A集合中,如数组:
var costGroupsIdArr = ctx.CostGroup.Where(x=>x.CostGroupType == 1).Select(x.CostGroupId).toArray();
然后从这里获取您的主要查询:
Select *
From Document
Where DocumentNumber = @Number
以下是最后的结果:
var result = ctx.Document.Where(x=>x.DocumentNumber == number && vostGroupsIdArr.Contains(x.CostGroupId)).ToList();
您可以尝试从我的代码段中找出自己需要的其他内容