c# - 有没有一种方法可以使用 Roslyn 中的编译对象从引用的程序集中获取程序集级别的属性?

标签 c# roslyn

我需要在项目的引用程序集中获取几个程序集级别的属性。 Compilation 对象有一个 ExternalReferences 列表,但列表中的对象不包含有关引用程序集的大量信息。我需要一种方法来从引用的程序集中获取程序集级别的属性

最佳答案

如果您有编译,您可以获得每个外部引用的 IAssemblySymbol。

var assemblySymbol = (IAssemblySymbol)compilation.GetAssemblyOrModuleSymbol(externalAssemblyRef);

然后给定一个 IAssemblySymbol,您可以使用 GetAttributes() 方法获取程序集级别的属性。

var assemblyAttributes = assemblySymbol.GetAttributes();

关于c# - 有没有一种方法可以使用 Roslyn 中的编译对象从引用的程序集中获取程序集级别的属性?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55389898/

相关文章:

typescript - 是否有用于 TypeScript 的代码生成 API?

c# - 从 2D 矩阵中切片 Span<T> 行 - 不确定为什么会这样

c# - 调整大小/裁剪使用 PDFsharp 创建的 PDF 文档

c# - Roslyn 查找对字段所做的所有分配

asp.net - asp.net 中的 Roslyn 编译器 - 未拾取条件编译符号

.net - 如果我使用 Roslyn 通过 Visual Studio 2014 构建当前的 .NET 项目,我会体验到构建性能的提升吗?

未经检查的 uint 的 C# 溢出行为

c# - 我可以在没有安装 Visual Studio 的 Windows 服务器上构建 .NET Core 应用程序吗?

c# - 学习 DLR(如何在其上实现一种语言)

c# - 如何在不使用 foreach 循环的情况下获取 JObject 的第一个子对象