|
|
@ -41,4 +41,39 @@ namespace SqlSugar |
|
|
|
return result; |
|
|
|
} |
|
|
|
} |
|
|
|
public class SubOrderByDesc : ISubOperation |
|
|
|
{ |
|
|
|
public string Name |
|
|
|
{ |
|
|
|
get { return "OrderByDesc"; } |
|
|
|
} |
|
|
|
|
|
|
|
public Expression Expression |
|
|
|
{ |
|
|
|
get; set; |
|
|
|
} |
|
|
|
|
|
|
|
public int Sort |
|
|
|
{ |
|
|
|
get |
|
|
|
{ |
|
|
|
return 480; |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
public ExpressionContext Context |
|
|
|
{ |
|
|
|
get; set; |
|
|
|
} |
|
|
|
|
|
|
|
public string GetValue(Expression expression) |
|
|
|
{ |
|
|
|
var exp = expression as MethodCallExpression; |
|
|
|
var argExp = exp.Arguments[0]; |
|
|
|
var result = "ORDER BY " + SubTools.GetMethodValue(this.Context, argExp, ResolveExpressType.FieldSingle)+" DESC"; |
|
|
|
var selfParameterName = this.Context.GetTranslationColumnName((argExp as LambdaExpression).Parameters.First().Name) + UtilConstants.Dot; |
|
|
|
result = result.Replace(selfParameterName, string.Empty); |
|
|
|
return result; |
|
|
|
} |
|
|
|
} |
|
|
|
} |
|
|
|