本文整理汇总了C#中QueryNode.GetType方法的典型用法代码示例。如果您正苦于以下问题:C# QueryNode.GetType方法的具体用法?C# QueryNode.GetType怎么用?C# QueryNode.GetType使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类QueryNode
的用法示例。
在下文中一共展示了QueryNode.GetType方法的1个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C#代码示例。
示例1: Find
public void Find(QueryNode node)
{
switch (node.Kind)
{
case QueryNodeKind.All:
case QueryNodeKind.Any:
var l = (LambdaNode)node;
Find(l.Source);
Find(l.Body);
break;
case QueryNodeKind.BinaryOperator:
var bo = (BinaryOperatorNode)node;
Find(bo.Left);
addPath();
Find(bo.Right);
break;
case QueryNodeKind.Convert:
Find(((ConvertNode)node).Source);
break;
case QueryNodeKind.NonentityRangeVariableReference:
case QueryNodeKind.UnaryOperator:
var uo = (UnaryOperatorNode)node;
Find(uo.Operand);
break;
case QueryNodeKind.SingleValuePropertyAccess:
var sv = (SingleValuePropertyAccessNode)node;
Find(sv.Source);
break;
/*
case QueryNodeKind.CollectionPropertyAccess:
var cpa = (CollectionPropertyAccessNode)node;
Paths[Paths.Count-1] += '.' + cpa.Property.Name;
break;
*/
case QueryNodeKind.CollectionNavigationNode:
var cnn = (CollectionNavigationNode)node;
Find(cnn.Source);
AddNav(cnn.NavigationProperty.Name);
break;
case QueryNodeKind.SingleNavigationNode:
var snn = (SingleNavigationNode)node;
AddNav(snn.NavigationProperty.Name);
break;
//case QueryNodeKind.SingleValueOpenPropertyAccess:
//case QueryNodeKind.SingleEntityCast:
//case QueryNodeKind.EntityCollectionCast:
case QueryNodeKind.NamedFunctionParameter:
Console.WriteLine(node.GetType());
break;
}
}