I was looking at your "Sample - Linq Queries"
Point "ORDER BY using Extensions.ThenByDescending"
This must be converted:
public void Orm20e()
{
var orders = UnitOfWork.Orders.Where(o => o.EmployeeId == 1).OrderBy(o => o.ShipCountry).ThenByDescending(o => o.Freight);
ObjectDumper.Write(orders);
}
Generated error:
SELECT
Orders.Id,
Orders.CustomerId,
Orders.EmployeeId,
Orders.Freight,
Orders.OrderDate,
Orders.RequiredDate,
Orders.ShipAddress,
Orders.ShipCity,
Orders.ShipCountry,
Orders.ShipName,
Orders.ShipPostalCode,
Orders.ShipRegion,
Orders.ShipViaId,
Orders.ShippedDate
FROM
Orders
WHERE
Orders.EmployeeId = 1
ORDER BY
Orders.ShipCountry,
Orders.Freight DESC;
SELECT
OrderDetails.Id,
OrderDetails.Discount,
OrderDetails.OrderId,
OrderDetails.ProductId
FROM
OrderDetails
WHERE
EXISTS (
SELECT
Orders.*
FROM
Orders
WHERE
Orders.Id = OrderDetails.OrderId AND
Orders.EmployeeId = 1
)
(2 ms)
Exception:
System.Reflection.TargetInvocationException: Ein Aufrufziel hat einen Ausnahmefehler verursacht. ---> Mindscape.LightSpeed.LightSpeedException: Unable to materialize field [ShippedDate] on type [Mindscape.LightSpeed.Samples.QuerySamples.Domain.Order]. See inner exception for details ---> System.InvalidCastException: Die angegebene Umwandlung ist ungültig.
bei ...( , Object , Object[] , Int32 )
bei ..( , Object , Object[] , Int32& )
--- Ende der internen Ausnahmestapelüberwachung ---
bei Mindscape.LightSpeed.LightSpeedException.(Exception , String , Object[] )
bei ..( , Object , Object[] , Int32& )
bei ..( , QueryExpression , Order , String , Boolean , Boolean )
bei ..( , QueryExpression , Order , String , Boolean , Boolean )
bei ..[TList](UnitOfWork , , IDataReader , TList , String , Boolean )
bei Mindscape.LightSpeed.UnitOfWork.Find[TList](Query query, TList results)
bei Mindscape.LightSpeed.UnitOfWork.Find[TEntity](Query query)
--- Ende der internen Ausnahmestapelüberwachung ---
bei System.RuntimeMethodHandle._InvokeMethodFast(Object target, Object[] arguments, SignatureStruct& sig, MethodAttributes methodAttributes, RuntimeTypeHandle typeOwner)
bei System.RuntimeMethodHandle.InvokeMethodFast(Object target, Object[] arguments, Signature sig, MethodAttributes methodAttributes, RuntimeTypeHandle typeOwner)
bei System.Reflection.RuntimeMethodInfo.Invoke(Object obj, BindingFlags invokeAttr, Binder binder, Object[] parameters, CultureInfo culture, Boolean skipVisibilityChecks)
bei System.Reflection.RuntimeMethodInfo.Invoke(Object obj, BindingFlags invokeAttr, Binder binder, Object[] parameters, CultureInfo culture)
bei System.Reflection.MethodBase.Invoke(Object obj, Object[] parameters)
bei Mindscape.LightSpeed.Linq.ProjectionStrategy.ExecuteEntityQuery(Query query, IUnitOfWork unitOfWork)
bei Mindscape.LightSpeed.Linq.ProjectionStrategy.Execute(Query query, IUnitOfWork unitOfWork)
bei Mindscape.LightSpeed.Linq.LinqQueryExecutionPlan.Execute()
bei Mindscape.LightSpeed.Linq.LinqQueryTranslator.Translate(Expression expression, IUnitOfWork unitOfWork)
bei Mindscape.LightSpeed.Linq.LinqQueryProvider.Execute(Expression expression)
bei Mindscape.LightSpeed.Linq.LinqQueryProvider.System.Linq.IQueryProvider.Execute(Expression expression)
bei Mindscape.LightSpeed.Linq.LinqQuery`1.System.Collections.IEnumerable.GetEnumerator()
bei ObjectDumper.WriteObject(String prefix, Object o) in C:\Program Files\Mindscape\LightSpeed 2.0\Samples\LinqQueries\ObjectDumper.cs:Zeile 75.
bei ObjectDumper.Write(Object o, Int32 depth) in C:\Program Files\Mindscape\LightSpeed 2.0\Samples\LinqQueries\ObjectDumper.cs:Zeile 18.
bei ObjectDumper.Write(Object o) in C:\Program Files\Mindscape\LightSpeed 2.0\Samples\LinqQueries\ObjectDumper.cs:Zeile 12.
bei Mindscape.LightSpeed.Samples.QuerySamples.LinqQuerySamples.Orm20e() in C:\Program Files\Mindscape\LightSpeed 2.0\Samples\LinqQueries\LinqQuerySamples.cs:Zeile 391.