我想要在 Linq 的一個查詢中查詢 sql where Condition And 和 Or。我嘗試在下面進行編碼,但不起作用。我想查詢 CEvaUserEva 或 EEvaUserEva 或 OEvaUserEva 中的 id 位置,但狀態必須為“成功”請幫助我。
public ActionResult Get(string id)
{
try
{
var result = (
from pre in context.PreChanges
join cus in context.PreEvaCustomers on pre.DocNumber equals cus.CDocNumber
join env in context.PreEvaEnvis on pre.DocNumber equals env.EDocNumber
join oth in context.PreEvaOthers on pre.DocNumber equals oth.ODocNumber
join sta in context.StatusDocs on pre.DocNumber equals sta.SDocNumber
select new GetAll
{
DocNumber = pre.DocNumber,
Users = pre.Users,
UserId = pre.UserId,
CDocNumber = cus.CDocNumber,
CEvaUserEva = cus.CEvaUserEva,
EDocNumber = env.EDocNumber,
EEvaUserEva = env.EEvaUserEva,
ODocNumber = cus.CDocNumber,
OEvaUserEva = oth.OEvaUserEva,
SDocNumber = sta.SDocNumber,
StatusDoc =sta.StatusDoc
})
.Where((g => g.CEvaUserEva == id || g.EEvaUserEva == id ||
g.OEvaUserEva == id && (g => g.StatusDoc== "Success"));
return Ok(result);
}
catch (Exception ex)
{
return BadRequest(ex.Message "GetC 47");
}
}
uj5u.com熱心網友回復:
您需要在 or 塊周圍加上括號
.Where(g => (g.CEvaUserEva == id || g.EEvaUserEva == id ||
g.OEvaUserEva == id) && g.StatusDoc == "Success");
轉載請註明出處,本文鏈接:https://www.uj5u.com/shujuku/531714.html
標籤:C#网林克
