在单个查询中更新并从Entity Framework获取记录

时间:2017-09-23 08:02:27

标签: c# asp.net entity-framework code-first

我正在建立酒店管理系统,我正在尝试查询预订时间,如果时间结束,它将关闭预订并返回房型。

关闭预订意味着它会将其状态设置为false,现在它将返回房间类型,问题是此查询:

var Records = db.BookingInformation
                .Where(t => t.EndDate <= serverDate)
                .Where(t => t.Booking == true)
                .Select(t => t.RoomType).ToList();

这是返回房型,但它没有将预订转为false。有帮助吗?

我知道我还没有尝试更新预订,但我不知道该怎么做。

1 个答案:

答案 0 :(得分:0)

试试这个,应该按照你的要求去做:

var records = db.BookingInformation
    .Where(t => t.EndDate <= serverDate)
    .Where(t => t.Booking == true).ToList()
      .Select(t => {t.Booking = false; return t.RoomType;});

执行此操作后调用SaveChanges,否则更改将不会持久保存到DB。