本文整理汇总了C#中System.Linq.Expressions.MemberExpression.IsGroupingKeyOf方法的典型用法代码示例。如果您正苦于以下问题:C# MemberExpression.IsGroupingKeyOf方法的具体用法?C# MemberExpression.IsGroupingKeyOf怎么用?C# MemberExpression.IsGroupingKeyOf使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类System.Linq.Expressions.MemberExpression
的用法示例。
在下文中一共展示了MemberExpression.IsGroupingKeyOf方法的2个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C#代码示例。
示例1: VisitMemberExpression
protected override Expression VisitMemberExpression(MemberExpression expression)
{
if (!IsMemberOfModel(expression))
{
return base.VisitMemberExpression(expression);
}
if (expression.IsGroupingKeyOf(_groupBy))
{
return _groupBy.KeySelector;
}
var elementSelector = _groupBy.ElementSelector;
if ((elementSelector is MemberExpression) || (elementSelector is QuerySourceReferenceExpression))
{
// If ElementSelector is MemberExpression, just return
return base.VisitMemberExpression(expression);
}
if ((elementSelector is NewExpression || elementSelector.NodeType == ExpressionType.Convert)
&& elementSelector.Type == expression.Expression.Type)
{
//TODO: probably we should check this with a visitor
return Expression.MakeMemberAccess(elementSelector, expression.Member);
}
throw new NotImplementedException();
}
示例2: VisitMemberExpression
protected override Expression VisitMemberExpression(MemberExpression expression)
{
if (expression.IsGroupingKeyOf(_groupBy))
{
return _groupBy.KeySelector;
}
return base.VisitMemberExpression(expression);
}