예제 #1
0
        public IEnumerable <PackageVerifierIssue> Validate(PackageAnalysisContext context)
        {
            var dependencyFrameworks = new HashSet <NuGetFramework>(
                context.Metadata.DependencyGroups.Select(g => g.TargetFramework));

            var buildItems = context
                             .PackageReader
                             .GetBuildItems()
                             .Where(f => f.Items.Any(i => IsCandidateMSBuildItem(i, context.Metadata.Id)));

            foreach (var buildItem in buildItems)
            {
                if (!dependencyFrameworks.Contains(buildItem.TargetFramework))
                {
                    yield return(PackageIssueFactory
                                 .BuildItemsDoNotMatchFrameworks(context.Metadata.Id, buildItem.TargetFramework));
                }
            }
        }