来自.select()linq的多个项目

时间:2015-05-07 09:34:00

标签: c# linq

我过去使用了很多SQL,但对LINQ来说是新手。我有以下查询成功从相关表中选择otherID,但是当我尝试选择多列时,我无法这样做。 这是我的以下查询:

var getQ = db.Requests.Where(x => temp.Contains(x.carID)).Select(x => x.otherID).ToList();

我试过了

var getQ = db.Requests.Where(x => temp.Contains(x.carID)).Select(x => x.otherID && x.dayID).ToList();

我无法让它工作,任何帮助表示赞赏,谢谢

2 个答案:

答案 0 :(得分:6)

您可以使用nonymous type返回多列

var getQ = db.Requests.Where(x => temp.Contains(x.carID))
                      .Select(x => new { OtherID = x.otherID, DayID = x.dayID).ToList();

您可以创建自定义类,因为无法从方法返回匿名类型。

class YourClass
{
    public int OtherID { get; set; }
    public int DayID { get; set; }
}

var getQ = db.Requests.Where(x => temp.Contains(x.carID))
                      .Select(x => new YourClass { OtherID = x.otherID, DayID = x.dayID).ToList();

答案 1 :(得分:0)

使更改成为select语句:

    var getQ = db.Requests.Where(x => temp.Contains(x.carID)).Select(x => new{x.otherID, x.dayID}).ToList();