private static void SetOrderByProperties(OeQueryContext queryContext, Object entity, Object value) { var visitor = new OeQueryNodeVisitor(queryContext.EdmModel, Expression.Parameter(typeof(T))); var setPropertyValueVisitor = new SetPropertyValueVisitor(); int i = 0; OrderByClause orderByClause = queryContext.ODataUri.OrderBy; while (orderByClause != null) { var propertyExpression = (MemberExpression)visitor.TranslateNode(orderByClause.Expression); Object orderValue = queryContext.SkipTokenAccessors[i++].GetValue(value); setPropertyValueVisitor.SetPropertyValue(entity, propertyExpression, orderValue); orderByClause = orderByClause.ThenBy; } }
private void SetOrderByProperties(Object entity, Object value) { var visitor = new OeQueryNodeVisitor(_skipTokenParser.EdmModel, Expression.Parameter(typeof(T))); var setPropertyValueVisitor = new SetPropertyValueVisitor(); int i = 0; OrderByClause orderByClause = _skipTokenParser.UniqueOrderBy; while (orderByClause != null) { var propertyExpression = (MemberExpression)visitor.TranslateNode(orderByClause.Expression); Object orderValue = _skipTokenParser.Accessors[i++].Accessor(value); setPropertyValueVisitor.SetPropertyValue(entity, propertyExpression, orderValue); orderByClause = orderByClause.ThenBy; } }