本文整理汇总了C#中MemberPath.GetScopeOfRelationEnd方法的典型用法代码示例。如果您正苦于以下问题:C# MemberPath.GetScopeOfRelationEnd方法的具体用法?C# MemberPath.GetScopeOfRelationEnd怎么用?C# MemberPath.GetScopeOfRelationEnd使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类MemberPath
的用法示例。
在下文中一共展示了MemberPath.GetScopeOfRelationEnd方法的1个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C#代码示例。
示例1: AsCql
/// <summary>
/// Given the <paramref name="outputMember"/> in the output extent view, generates a constructor expression for
/// <paramref name="outputMember"/>'s type, i.e, an expression of the form "Type(....)"
/// If <paramref name="outputMember"/> is an association end then instead of constructing an Entity or Complex type, constructs a reference.
/// </summary>
private void AsCql(Action<EntitySet, IList<MemberPath>> createRef, Action<IList<MemberPath>> createType, MemberPath outputMember)
{
EntitySet refScopeEntitySet = outputMember.GetScopeOfRelationEnd();
if (refScopeEntitySet != null)
{
// Construct a scoped reference: CreateRef(CPerson1Set, NewRow(pid1, pid2), CPerson1)
EntityType entityType = refScopeEntitySet.ElementType;
List<MemberPath> keyMemberOutputPaths = new List<MemberPath>(entityType.KeyMembers.Select(km => new MemberPath(outputMember, km)));
createRef(refScopeEntitySet, keyMemberOutputPaths);
}
else
{
// Construct an entity/complex/Association type in the Members order for fields: CPerson(CPerson1_Pid, CPerson1_Name)
Debug.Assert(m_edmType is StructuralType, "m_edmType must be a structural type.");
List<MemberPath> memberOutputPaths = new List<MemberPath>();
foreach (EdmMember structuralMember in Helper.GetAllStructuralMembers(m_edmType))
{
memberOutputPaths.Add(new MemberPath(outputMember, structuralMember));
}
createType(memberOutputPaths);
}
}