gpt4 book ai didi

c# - .NET Framework 中的“AssemblyTitle”属性

转载 作者:IT王子 更新时间:2023-10-29 04:36:10 25 4
gpt4 key购买 nike

AssemblyTitle 属性的实际用途是什么? MSDN 说它指定了程序集的描述,并且程序集标题是一个可以包含空格的友好名称。

Visual Studio 要求在项目的属性窗口中提供程序集名称以及默认命名空间。有一个 AssemblyName 属性,但它完整地描述了程序集的唯一身份(即文化等)。我看不出 AssemblyTitleAssemblyProduct 有何不同。

我使用 IL 反汇编程序了解 Microsoft 如何使用 AssemblyTitle。我发现在mscorlib.dll中,AssemblyTitleAssemblyProductAssemblyDefaultAlias都设置为"mscorlib .dll”

总而言之,我真正想看到的是使用 AssemblyTitle 的实际例子。

最佳答案

[AssemblyTitle] 非常重要,当您右键单击程序集并使用 Properties + Details 时,它会直接可见。

一个使它更明显的例子。让我们从这个 AssemblyInfo.cs 文件开始:

[assembly: AssemblyTitle("AssemblyTitle")]
[assembly: AssemblyDescription("AssemblyDescription")]
[assembly: AssemblyConfiguration("AssemblyConfiguration")]
[assembly: AssemblyCompany("AssemblyCompany")]
[assembly: AssemblyProduct("AssemblyProduct")]
[assembly: AssemblyCopyright("AssemblyCopyright")]
[assembly: AssemblyTrademark("AssemblyTrademark")]
[assembly: AssemblyCulture("")]
[assembly: Guid("7da36bdf-39fb-4a4d-b98c-ecefd99b155a")]
[assembly: AssemblyVersion("1.2.3.4")]
[assembly: AssemblyFileVersion("5.6.7.8")]

然后查看文件的属性:

enter image description here

对此的一些注释:

  • 请注意 [AssemblyDescription] 的误导性,它实际上是您在属性表中看到的标题。
  • 不显示描述、配置和公司。您可能希望将公司名称合并到可见的版权中。 Description 和 Company 实际上存在于非托管版本资源中,但 Windows 只是不显示它。
  • [AssemblyCulture]比较特殊,用于卫星程序集本地化
  • [Guid]比较特殊,如果你创建一个[ComVisible]程序集,它会设置类型库的guid
  • [AssemblyVersion] 非常特别,在 .NET Framework 中非常重要。它没有显示是一个主要的问题。您可以在 XP 中看到它,而不是在更高版本的 Windows 中。一个重要的考虑是使 [AssemblyFileVersion] 具有相同的值。
  • 显示的“产品版本”与“文件版本”相同。这也不太好,您想添加 [AssemblyInformationalVersion] 属性来解决这个问题。

这很奇怪,Windows 组和 DevDiv 并不总是能很好地合作。

关于c# - .NET Framework 中的“AssemblyTitle”属性,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23144872/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com