OrderBy no se traduce a SQL al pasar una función de selector

Cuando ejecuto:

var t = db.Table1.OrderBy(x => x.Name).ToList();

En el generador de perfiles SQL, este es el SQL traducido:

SELECT 
[Extent1].[ID] AS [ID], 
[Extent1].[Name] AS [Name]
FROM [dbo].[Table1] AS [Extent1]
ORDER BY [Extent1].[Name] ASC

Cual es correcta.

Sin embargo, si paso una función de selector a OrderBy:

Func<Table1, string> f = x => x.Name;
var t = db.Table1.OrderBy(f).ToList();

El SQL traducido es:

SELECT 
[Extent1].[ID] AS [ID], 
[Extent1].[Name] AS [Name]
FROM [dbo].[Table1] AS [Extent1]

El pedido no está totalmente traducido.

¿Cuál es el problema? Son la misma función lambda, la única diferencia es en el segundo caso, primero se asigna a una variable.

Respuestas a la pregunta(1)

Su respuesta a la pregunta