本文整理汇总了C#中System.ComponentModel.Composition.Primitives.ComposablePartDefinition.IsGeneric方法的典型用法代码示例。如果您正苦于以下问题:C# ComposablePartDefinition.IsGeneric方法的具体用法?C# ComposablePartDefinition.IsGeneric怎么用?C# ComposablePartDefinition.IsGeneric使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类System.ComponentModel.Composition.Primitives.ComposablePartDefinition
的用法示例。
在下文中一共展示了ComposablePartDefinition.IsGeneric方法的1个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C#代码示例。
示例1: TryTraverse
public bool TryTraverse(ComposablePartDefinition part, out IEnumerable<ComposablePartDefinition> reachableParts)
{
reachableParts = null;
List<ComposablePartDefinition> reachablePartList = null;
// Go through all part exports
foreach (ExportDefinition export in part.ExportDefinitions)
{
// Find all parts that we know will import each export
List<ComposablePartDefinition> candidateReachableParts = null;
if (this._importersIndex.TryGetValue(export.ContractName, out candidateReachableParts))
{
// find if they actually match
foreach (var candidateReachablePart in candidateReachableParts)
{
foreach (ImportDefinition import in candidateReachablePart.ImportDefinitions.Where(this._importFilter))
{
if (import.IsImportDependentOnPart(part, export, part.IsGeneric() != candidateReachablePart.IsGeneric()))
{
if (reachablePartList == null)
{
reachablePartList = new List<ComposablePartDefinition>();
}
reachablePartList.Add(candidateReachablePart);
}
}
}
}
}
reachableParts = reachablePartList;
return (reachableParts != null);
}