如何在"where"中使用未包含在"select"中的列?"where"方法没有显示我SQL Server表中的所有列,只有select语句中的3列。我需要根据表中的另一列执行选择:
using (var context = new URIntakeEntities())
{
return context.Claims.Select(
u => new Models.Claim
{
ClaimNumber = u.ClaimNumber,
DateOfInjury = u.DateOfInjury,
Denied = u.Denied
}).Where(u => u.?????).ToList();
}
您应该将where
语句移动到select statement
语句之前。
using (var context = new URIntakeEntities())
{
return context.Claims.Where(u=> u.?????).Select(
u => new Models.Claim
{
ClaimNumber = u.ClaimNumber,
DateOfInjury = u.DateOfInjury,
Denied = u.Denied
}).ToList();
}
如何在"where"中使用未包含在列表中的列"选择"?
你不能。Where应用于当前类型的序列。因此,您应该在投影结果之前应用过滤器:
using (var context = new URIntakeEntities())
{
return context.Claims
.Where(u => u.?????)
.Select(u => new Models.Claim
{
ClaimNumber = u.ClaimNumber,
DateOfInjury = u.DateOfInjury,
Denied = u.Denied
}).ToList();
}