0

我正在尝试进行编译查询,但我只想让它返回一个 int

        public Func<DataContext, DateTime, int>
    GetNextTourNo = CompiledQuery.Compile((DataContext db, DateTime day) => ((from b in db.GetTable<BookingType>()
                                                                              where b.RecordType == "H" && b.TourStartDateTime.Value.Date == day.Date
                                                                              orderby b.TourID descending
                                                                              select new { nextID = b.TourID +1 }).Single()));
4

2 回答 2

1

你能提供更多关于匿名类型和编译查询上下文的信息吗?

此外,如果您直接在 linq to Entity 中使用查询,则日期比较将不起作用。为此需要使用实体函数。这可能会导致无效退货。

于 2012-11-12T12:47:16.760 回答
1

您可以只nextID从选定的单个匿名对象返回属性

select new { nextID = b.TourID +1 }).Single().nextID
于 2012-11-12T13:01:04.223 回答