Ejemplo n.º 1
0
        public override IEnumerable <ISourceMappedItem> GetSourceInfo(string assemblyPath, string pdbPath, ReportingResult report)
        {
            using (var host = new HostEnvironment())
                using (var pdbFs = File.OpenRead(pdbPath))
                    using (var pdbReader = new PdbReader(pdbFs, host))
                    {
                        var metadataVisitor = new CciMetadataTraverser(report, pdbReader);
                        var traverser       = new MetadataTraverser
                        {
                            PreorderVisitor          = metadataVisitor,
                            TraverseIntoMethodBodies = true
                        };

                        var cciAssembly = host.LoadAssembly(assemblyPath);
                        traverser.Traverse(cciAssembly);

                        return(metadataVisitor.FoundItems);
                    }
        }
        public override IEnumerable<ISourceMappedItem> GetSourceInfo(string assemblyPath, string pdbPath, ReportingResult report)
        {
            using (var host = new HostEnvironment())
            using (var pdbFs = File.OpenRead(pdbPath))
            using (var pdbReader = new PdbReader(pdbFs, host))
            {
                var metadataVisitor = new CciMetadataTraverser(report, pdbReader);
                var traverser = new MetadataTraverser
                {
                    PreorderVisitor = metadataVisitor,
                    TraverseIntoMethodBodies = true
                };

                var cciAssembly = host.LoadAssembly(assemblyPath);
                traverser.Traverse(cciAssembly);

                return metadataVisitor.FoundItems;
            }
        }