.NET 型から Mono.Cecil TypeDefinition を取得しようとしていますが、運がありません。
私は次のようなコードを使用しています:
var type = typeof(MarkdownMonster.AppConfiguration);
var a = AssemblyDefinition.ReadAssembly(type.Assembly.Location);
var tr = a.MainModule.Import(type); // this seems to work
var td = tr.Resolve(); // fails
しかし、アセンブリ解決エラーで失敗します:
GetConfigurationPropertiesTest [0:29.990] 失敗: Mono.Cecil.AssemblyResolutionException: アセンブリの解決に失敗しました: 'MarkdownMonster, Version=1.18.11.0, Culture=neutral, PublicKeyToken=null' Mono.Cecil.AssemblyResolutionException: アセンブリの解決に失敗しました: 'MarkdownMonster, Version=1.18.11.0、Culture=neutral、PublicKeyToken=null' at Mono.Cecil.BaseAssemblyResolver.Resolve(AssemblyNameReference name, ReaderParameters parameters) at Mono.Cecil.DefaultAssemblyResolver.Resolve(AssemblyNameReference name) at Mono.Cecil.MetadataResolver.Resolve( TypeReference 型) で Mono.Cecil.TypeReference.Resolve() で Westwind.TypeImporter.TypeParser.ParseObject(型の型、Boolean dontParseMembers)
TypeReference インポートが機能しているようで、有効な TypeReference を生成するため、アセンブリは明らかにそこにあります。
問題のアセンブリは EXE であり、キックのために名前を DLL に変更しましたが、効果はありませんでした。