阅读程序集的作者
Read the Authors of an Assembly
读取程序集的一些元数据非常容易,只需加载 Assembly
然后获取自定义属性,例如:
Assembly assembly = Assembly.GetExecutingAssembly();
AssemblyTitleAttribute? attribute = assembly.GetCustomAttribute<AssemblyTitleAttribute>();
string? title = attribute?.Title;
您可以将 AssemblyTitleAttribute
替换为 Copyright
、Trademark
、Description
、Version
等其他几个,但我找不到东西对于 Authors
(此元数据可以设置在与另一个相同的位置,在项目解决方案的包选项卡上)。
知道为什么缺少此属性以及如何读取它的值吗? (我使用的是 dotnet 标准 2.1)
没有 assembly Attribute
for Authors
也不能通过Reflection 或 Shell32
Here's AssembyInfo 属性列表,Authors
不是其中之一
根据问题中更新的屏幕截图,您指的是 Project>Properties>Package
视图,您在此处看到的字段混合了 AssemblyInfo 和 Nuget 元数据属性
Copyright
和 Description
等属性对于两者都是通用的
其中 PackageId
、Authors
、PackageVersion
等属性是 Nuget 元数据属性,无法从程序集中查询。
Nuget 元数据属性 是用作打包过程输入的属性列表
为什么我们甚至 Authors 作为 Project>Properties>Package
中的一个字段?
- 这样可以被nuget.org引用,显示作者姓名
来自 Microsoft 文档
Authors: A semicolon-separated list of packages authors, matching the profile names on nuget.org. These are displayed in the NuGet
Gallery on nuget.org and are used to cross-reference packages by the
same authors.
参考文献:
Setting Extended Properties:
Custom Assembly Attributes
读取程序集的一些元数据非常容易,只需加载 Assembly
然后获取自定义属性,例如:
Assembly assembly = Assembly.GetExecutingAssembly();
AssemblyTitleAttribute? attribute = assembly.GetCustomAttribute<AssemblyTitleAttribute>();
string? title = attribute?.Title;
您可以将 AssemblyTitleAttribute
替换为 Copyright
、Trademark
、Description
、Version
等其他几个,但我找不到东西对于 Authors
(此元数据可以设置在与另一个相同的位置,在项目解决方案的包选项卡上)。
知道为什么缺少此属性以及如何读取它的值吗? (我使用的是 dotnet 标准 2.1)
没有 assembly Attribute
for Authors
也不能通过Reflection 或 Shell32
Here's AssembyInfo 属性列表,Authors
不是其中之一
根据问题中更新的屏幕截图,您指的是 Project>Properties>Package
视图,您在此处看到的字段混合了 AssemblyInfo 和 Nuget 元数据属性
Copyright
和 Description
等属性对于两者都是通用的
其中 PackageId
、Authors
、PackageVersion
等属性是 Nuget 元数据属性,无法从程序集中查询。
Nuget 元数据属性 是用作打包过程输入的属性列表
为什么我们甚至 Authors 作为 Project>Properties>Package
中的一个字段?
- 这样可以被nuget.org引用,显示作者姓名
来自 Microsoft 文档
Authors: A semicolon-separated list of packages authors, matching the profile names on nuget.org. These are displayed in the NuGet Gallery on nuget.org and are used to cross-reference packages by the same authors.
参考文献:
Setting Extended Properties:
Custom Assembly Attributes