我在tblMaterials
中的 2 记录和tblMaterialTenderGroups
中的零记录中
但是,当我将数据提取到gridview
时,它会向我显示两条记录,并且连接不起作用
public List<tblMaterial> ShowPresentMaterialInGroup()
{
List<tblMaterial> q = (from i in dbconnect.tblMaterials.AsEnumerable()
join b in dbconnect.tblMaterialTenderGroups on i.materialId equals b.materialId
where b.MaterialGroupId == _materialGroupId
select new tblMaterial()
{
existAmout = i.existAmout,
materialId = i.materialId,
name = i.name,
needAmount = i.needAmount,
requestAmount = i.requestAmount,
unit = i.unit,
requestId = i.requestId
}).ToList();
return q;
}
答案 0 :(得分:1)
你能试试吗
List<tblMaterial> q = from i in dbconnect.tblMaterials
join b in dbconnect.tblMaterialTenderGroups on i.materialId equals b.materialId
select new { existAmout = i.existAmout,
materialId = i.materialId,
name = i.name,
needAmount = i.needAmount,
requestAmount = i.requestAmount,
unit = i.unit,
requestId = i.requestId}.ToList();
可能正在使用返回两条记录。
我读了一些here
使用AsEnumerable将中断查询并执行“外部” 作为linq-to-objects而不是Linq-to-SQL。实际上,你是 为你的两个表运行“select * from ...”,然后执行 连接,where子句过滤,排序和投影客户端。