我有一个语法问题,需要比我聪明的人。
这是我的选择语句
var Materials = from j in db.Jobs
join je in db.a_Job_Extensions on j.Top_Lvl_Job equals je.Job
join mr in db.Material_Reqs on j.Job1 equals mr.Job
join m in db.Materials on mr.Material equals m.Material1
where jobList.Contains(j.Top_Lvl_Job)
select new
{
je.PCR,
mr.Job,
j.Top_Lvl_Job,
OrderQty = ((from j1 in db.Jobs where j1.Job1 == j.Top_Lvl_Job select new { j1.Order_Quantity}).FirstOrDefault()).ToString(),
j.Part_Number,
mr.Material,
mr.Description,
mr.Est_Qty,
m.Status,
theClass = m.Class == null? "": m.Class
};
j1.Order_Quantity是Job表中的double。但是,当我运行查询时,它返回的值为“ {Order_Quantity = 607}”。
我的愿望是让它只返回“ 607”的值。
我在这里做错了什么?
该代码最初试图将其作为双精度进行输出,但是我切换到字符串以查看将要输出的内容。我来自sql背景,所以我一定很傻。
答案 0 :(得分:0)
尝试一下
((from j1 in db.Jobs where j1.Job1 == j.Top_Lvl_Job select
j1.Order_Quantity.ToString()).FirstOrDefault())