c# - 如何在 C# LINQ 中编写以下分析函数
问题描述
我试图将以下代码从 T-sql 表达式转换为 linq 表达式
SELECT PIN.Code AS InvoiceNum ,
CONVERT(DATE, PIN.Date,110) AS ExeDate ,
P.NameAR AS PartnerName,
PID.StockCount AS StockCount,
PID.PurchasePrice AS PurchasePrice,
PID.NetAmmount AS NetAmount ,
SUM(PID.StockCount) OVER ( ORDER BY PIN.Date ROWS BETWEEN UNBOUNDED PRECEDING AND 0 PRECEDING
) AS StockBalance
FROM dbo.PurchaseInvoices AS PIN
INNER JOIN dbo.PurchaseInvoiceDetails AS PID
ON PID.PurchaseInvoiceID = PIN.PurchaseInvoiceID
INNER JOIN dbo.Partners AS P
ON P.PartnerID = PID.PartnerID
WHERE PIN.PurchaseOrderID=17
我尝试使用以下 linq 代码
dynamic data = unitOfWork.PurchaseInvoiceDetailRepository.Get()
.OrderBy(x => x.PurchaseInvoice.Date)
.Select(x => new { x.PurchaseInvoice.Code, x.PurchaseInvoice.Date,
x.Partner.NameAR, x.StockCount, x.PurchasePrice, x.NetAmmount });
但不行,请帮我解决这个问题。谢谢