Установка атрибутов сборки в коде
Атрибуты сборки — это значения, которые предоставляют сведения о сборке. Обычно они задаются в файле AssemblyInfo.cs . Атрибуты разделяются на следующие группы.
- Атрибуты удостоверения сборки
- Информационные атрибуты
- Атрибуты манифеста сборки
- Атрибуты строгого имени
Эта статья область для добавления атрибутов сборки из кода. Сведения о добавлении атрибутов сборки в проекты (не в коде) см. в разделе "Настройка атрибутов сборки" в файле проекта.
Атрибуты удостоверения сборки
Три атрибута вместе со строгим именем (если оно применимо) определяют удостоверение сборки: имя, версия, язык и региональные параметры. Эти атрибуты формируют полное имя сборки и являются обязательными при ссылке на сборку в коде. Атрибуты можно использовать для задания версии сборки и языка и региональных параметров. Компилятор или компоновщик сборок (Al.exe) задает значение имени при создании сборки на основе файла, содержащего манифест сборки.
В следующей таблице описаны атрибуты версии и языка и региональных параметров.
Атрибут удостоверения сборки | Description |
---|---|
AssemblyCultureAttribute | Перечислимое поле, указывающее язык и региональные параметры, поддерживаемые сборкой. В сборке можно также указать независимость от языка и региональных параметров, чтобы указать, что сборка содержит ресурсы для языка и региональных параметров по умолчанию. Примечание. Среда выполнения рассматривает любую сборку, у которой для атрибута языка и региональных параметров не задано значение NULL, в качестве вспомогательной сборки. Такие сборки подчиняются правилам привязки вспомогательных сборок. Дополнительные сведения см. в разделе Обнаружение сборок в среде выполнения. |
AssemblyFlagsAttribute | Значение, задающее атрибуты сборки: например, может ли сборка выполняться параллельно. |
AssemblyVersionAttribute | Числовое значение в формате основной_номер.дополнительный_номер.номер_сборки.номер_редакции (например, 2.4.0.0). Среда CLR использует это значение для выполнения операций привязки в сборках со строгими именами. Примечание. Если атрибут AssemblyInformationalVersionAttribute не применен к сборке, то номер версии, задаваемый атрибутом AssemblyVersionAttribute, используется свойствами Application.ProductVersion, Application.UserAppDataPath и Application.UserAppDataRegistry. |
В следующем примере кода показано, как применить атрибуты версии и языка и региональных параметров сборки.
// Set version number for the assembly.
[assembly:AssemblyVersionAttribute("4.3.2.1")];
// Set culture as German.
[assembly:AssemblyCultureAttribute("de")];
// Set version number for the assembly.
[assembly:AssemblyVersionAttribute("4.3.2.1")]
// Set culture as German.
[assembly:AssemblyCultureAttribute("de")]
' Set version number for the assembly.
<Assembly:AssemblyVersionAttribute("4.3.2.1")>
' Set culture as German.
<Assembly:AssemblyCultureAttribute("de")>
Информационные атрибуты
Информационные атрибуты можно использовать для предоставления дополнительных сведений о компании или продукте в сборке. В следующей таблице описаны информационные атрибуты, которые можно применить к сборке.
Информационный атрибут | Description |
---|---|
AssemblyCompanyAttribute | Строковое значение, содержащее название компании. |
AssemblyCopyrightAttribute | Строковое значение, содержащее сведения об авторских правах. |
AssemblyFileVersionAttribute | Строковое значение, содержащее номер версии файла Win32. Обычно по умолчанию здесь используется версия сборки. |
AssemblyInformationalVersionAttribute | Строковое значение, содержащее сведения о версии, которые не используются средой CLR, например полный номер версии продукта. Примечание. Если этот атрибут применен к сборке, указываемую им строку можно получить во время выполнения с помощью свойства Application.ProductVersion. Эта строка также используется в пути и разделе реестра, предоставляемых свойствами Application.UserAppDataPath и Application.UserAppDataRegistry. |
AssemblyProductAttribute | Строковое значение, содержащее сведения о продукте. |
AssemblyTrademarkAttribute | Строковое значение, содержащее сведения о товарном знаке. |
Эти атрибуты могут отображаться на странице свойств Windows сборки или их можно переопределить с помощью параметра компилятора /win32res , чтобы указать файл ресурсов Win32.
Атрибуты манифеста сборки
Атрибуты манифеста сборки можно использовать для предоставления сведений в манифесте сборки, включая название, описание, псевдоним по умолчанию и конфигурацию. В следующей таблице описаны атрибуты манифеста сборки.
Атрибуты манифеста сборки | Description |
---|---|
AssemblyConfigurationAttribute | Строковое значение, содержащее конфигурацию сборки, например Retail или Debug. Среда выполнения не использует это значение. |
AssemblyDefaultAliasAttribute | Строковое значение, содержащее псевдоним по умолчанию, используемый для ссылки на эту сборку из других сборок. Это значение предоставляет понятное имя, если имя сборки само по себе не является понятным (например, если это значение идентификатора GUID). Это значение можно также использовать как краткую форму полного имени сборки. |
AssemblyDescriptionAttribute | Строковое значение, содержащее краткое описание сути и назначения сборки. |
AssemblyTitleAttribute | Строковое значение, содержащее понятное имя сборки. Например, сборка с именем comdlg может иметь название "Элемент управления стандартного диалогового окна Майкрософт". |
Атрибуты строгого имени
Атрибуты строгого имени можно использовать для задания строгого имени сборки. В таблице ниже описываются атрибуты строгого имени.
Атрибут строгого имени | Description |
---|---|
AssemblyDelaySignAttribute | Логическое значение, указывающее, что используется отложенная подпись. |
AssemblyKeyFileAttribute | Строковое значение, указывающее имя файла, который содержит открытый ключ (при использовании отложенной подписи), или открытый и закрытый ключи, передаваемые в качестве параметра в конструктор этого атрибута. Обратите внимание, что имя файла указано относительно пути к выходному файлу (EXE или DLL), а не пути к исходному файлу. |
AssemblyKeyNameAttribute | Указывает контейнер ключей, содержащий пару ключей, передаваемых в качестве параметра в конструктор этого атрибута. |
В следующем примере кода показаны атрибуты, применяемые при использовании отложенной подписи для создания сборки со строгим именем с помощью файла открытого ключа myKey.snk.
[assembly:AssemblyKeyFileAttribute("myKey.snk")];
[assembly:AssemblyDelaySignAttribute(true)];
[assembly:AssemblyKeyFileAttribute("myKey.snk")]
[assembly:AssemblyDelaySignAttribute(true)]
<Assembly:AssemblyKeyFileAttribute("myKey.snk")>
<Assembly:AssemblyDelaySignAttribute(True)>