Browse Source

Show full assembly load log in ReferenceFolderTreeNode.

pull/1556/head
Siegfried Pammer 6 years ago
parent
commit
db65c49f00
  1. 8
      ICSharpCode.Decompiler/Metadata/DotNetCorePathFinderExtensions.cs
  2. 16
      ILSpy/TreeNodes/ReferenceFolderTreeNode.cs

8
ICSharpCode.Decompiler/Metadata/DotNetCorePathFinderExtensions.cs

@ -116,6 +116,14 @@ namespace ICSharpCode.Decompiler.Metadata @@ -116,6 +116,14 @@ namespace ICSharpCode.Decompiler.Metadata
}
}
public IReadOnlyList<UnresolvedAssemblyNameReference> Entries {
get {
lock (loadedAssemblyReferences) {
return loadedAssemblyReferences.Values.ToList();
}
}
}
public bool HasErrors {
get {
lock (loadedAssemblyReferences) {

16
ILSpy/TreeNodes/ReferenceFolderTreeNode.cs

@ -71,6 +71,22 @@ namespace ICSharpCode.ILSpy.TreeNodes @@ -71,6 +71,22 @@ namespace ICSharpCode.ILSpy.TreeNodes
// Show metadata order of references
foreach (var node in this.Children.OfType<ILSpyTreeNode>())
node.Decompile(language, output, options);
output.WriteLine();
output.WriteLine();
// Show full assembly load log:
language.WriteCommentLine(output, "Assembly load log including transitive references:");
var info = parentAssembly.LoadedAssembly.LoadedAssemblyReferencesInfo;
foreach (var asm in info.Entries) {
language.WriteCommentLine(output, asm.FullName);
output.Indent();
foreach (var item in asm.Messages) {
language.WriteCommentLine(output, $"{item.Item1}: {item.Item2}");
}
output.Unindent();
output.WriteLine();
}
}
}
}

Loading…
Cancel
Save