<Library> 要素 (.NET Native)

実行時にリフレクションに使用可能なメタデータを持つ型と型のメンバーを含むアセンブリを定義します。

<Directives> 要素 <Library> 要素

構文

<Library Name="assembly_name" />

属性および要素

以降のセクションでは、属性、子要素、および親要素について説明します。

属性

属性 説明
Name 必須の属性です。 アセンブリの名前を指定します。 この <Library> 要素の子要素によって、このアセンブリ内にある型と型のメンバーのランタイム リフレクション ポリシーが定義されます。

Name 属性

[値] 説明
assembly_name ファイル拡張子のないアセンブリの簡易名です。 この属性は、AssemblyName.Name プロパティに対応します。 たとえば、Extensions.dll というアセンブリの名前は "Extensions" です。 アセンブリのメタデータの条件付きインクルードをサポートする特殊な形式の assembly_name については、「解説」セクションを参照してください。

子要素

要素 説明
<アセンブリ> 特定のアセンブリ内のすべての型にポリシーを適用します。
<名前空間> 特定の名前空間内のすべての型にポリシーを適用します。
<種類> クラスや構造体などの特定の型にポリシーを適用します。
<TypeInstantiation> 構築されたジェネリック型にポリシーを適用します。 たとえば、<TypeInstantiation> 要素を使用して List<String> 型のポリシーを定義できます。

親要素

要素 説明
<ディレクティブ> ランタイム ディレクティブ ファイルのルート要素です。

解説

<Directives> 要素には、0 個以上の <Library> 要素を含めることができます。

<Library> 要素は、実行時に必要なメタデータを持つプログラム要素を定義するためのコンテナーとして機能します。この要素はポリシーを表しません。 コンパイル時に、コンパイラ ツールは <Library> 要素により指定されたライブラリでのみ、その子要素により示されるプログラム要素を検索します。 一方、<Application> 要素の子要素により示されるプログラム要素を検索する場合、コンパイラ ツールは .NET Framework コア ライブラリを含むすべてのライブラリを検索します。

<Library> ディレクティブは、条件付きで使用される場合があります。 <Library> 要素の名前の先頭と末尾がアスタリスク (*) の場合、アスタリスク間に指定されているアセンブリがアプリによって参照される場合にのみ、<Library> ディレクティブの効果があります。 たとえば、次のランタイム ディレクティブは、Utilities.dll アセンブリがアプリによって参照されている場合にのみ適用されます。

<Directives xmlns="http://schemas.microsoft.com/netfx/2013/01/metadata">
  <Library Name="*Utilities*">
   ...
  </Library>
</Directives>

関連項目