public void NullableBool_InOrderByClause() { CheckQuery( from k in Kitchens orderby k.PassedLastInspection select k.ID, "SELECT [t0].[ID] AS [value] FROM [KitchenTable] AS [t0] ORDER BY [t0].[PassedLastInspection] ASC"); bool?nullableValue = true; CheckQuery( from k in Kitchens orderby nullableValue select k.ID, "SELECT [t0].[ID] AS [value] FROM [KitchenTable] AS [t0] ORDER BY @1 ASC", new CommandParameter("@1", 1)); var kitchenParameter = Expression.Parameter(typeof(Kitchen), "k"); var nullablePredicate = Expression.Lambda <Func <Kitchen, bool?> > ( Expression.Equal(Expression.Property(kitchenParameter, "LastInspectionScore"), Expression.Constant(0, typeof(int?)), true, null), kitchenParameter); CheckQuery( Kitchens.OrderBy(nullablePredicate).Select(k => k.ID), "SELECT [t0].[ID] AS [value] FROM [KitchenTable] AS [t0] " + "ORDER BY CASE WHEN ([t0].[LastInspectionScore] = @1) THEN 1 WHEN NOT ([t0].[LastInspectionScore] = @1) THEN 0 ELSE NULL END ASC", new CommandParameter("@1", 0)); }
public void Sum_WithOrderings() { CheckQuery( () => Kitchens.OrderBy(k => k.Name).Sum(k => k.RoomNumber), "SELECT SUM([t0].[RoomNumber]) AS [value] FROM [KitchenTable] AS [t0]" ); }
public void Sum_WithOrderings2() { CheckQuery( () => Kitchens.OrderBy(k => k.Name).Take(5).Sum(k => k.RoomNumber), "SELECT SUM([q0].[Key_RoomNumber]) AS [value] FROM (SELECT TOP (5) [t1].[ID] AS [Key_ID]," + "[t1].[Name] AS [Key_Name],[t1].[RestaurantID] AS [Key_RestaurantID]," + "[t1].[LastCleaningDay] AS [Key_LastCleaningDay],[t1].[PassedLastInspection] AS [Key_PassedLastInspection]," + "[t1].[LastInspectionScore] AS [Key_LastInspectionScore],[t1].[Name] AS [Value] " + "FROM [KitchenTable] AS [t1] ORDER BY [t1].[Name] ASC) AS [q0]"); }