Manifest zestawu

Każdy zestaw statyczny i dynamiczny zawiera kolekcję danych, które opisują powiązania między elementami zawartymi w zestawie. Manifest zestawu zawiera metadane zestawu. W manifeście zestawu znajdują się wszystkie metadane potrzebne do określenia wymagań w zakresie wersji zestawu i tożsamości jego zabezpieczeń, a także wszystkie metadane niezbędne do definiowania zakresu zestawu oraz rozpoznawania odwołań do zasobów i klas. Manifest zestawu może być przechowywany w pliku PE ( .exe lub .dll) z kodem wspólnego języka pośredniego (CIL) lub w autonomicznym pliku PE zawierającym tylko informacje o manifeście zestawu.

Na ilustracji poniżej widać różne sposoby przechowywania manifestu.

Diagram przedstawiający manifest w konfiguracji zestawu jednoplikowego i zestawu wieloplikowego.

Dla zestawu o jednym skojarzonym pliku manifest jest umieszczony w pliku PE, co tworzy zestaw jednoplikowy. Zestaw wieloplikowy może zawierać autonomiczny plik manifestu lub manifest umieszczony w jednym z plików PE w zestawie.

Manifest każdego zestawu wykonuje następujące funkcje:

  • Wylicza pliki tworzące zestaw.

  • Określa, w jaki sposób odwołania do typów i zasobów zestawów są mapowane na pliki zawierające ich deklaracje i implementacje.

  • Wylicza inne zestawy, od których zależy zestaw.

  • Tworzy poziom pośredni między obiektami używającymi zestawu a szczegółami implementacji zestawu.

  • Sprawia, że zestaw sam siebie opisuje.

Zawartość manifestu zestawu

Poniższa tabela pokazuje informacje zawarte w manifeście zestawu. Pierwsze cztery elementy: nazwa zestawu, numer wersji, kultura i informacje o silnej nazwie składają się na tożsamość zestawu.

Informacja opis
Nazwa zestawu Ciąg tekstowy określający nazwę zestawu.
Numer wersji Główny i pomocniczy numer wersji oraz numery poprawki i kompilacji. Na podstawie tych numerów środowisko uruchomieniowe języka wspólnego wymusza zasady dotyczące wersji.
Kultura Informacje o kulturze lub języku obsługiwanym przez zestaw. Informacji tych należy używać wyłącznie w celu oznaczenia zestawu jako zestawu satelickiego zawierającego informacje specyficzne dla kultury lub języka. (Zestaw z informacjami o kulturze jest automatycznie traktowany jako satelicki).
Informacje o silnej nazwie Klucz publiczny od wydawcy, jeśli zestawowi nadano silną nazwę.
Lista wszystkich plików w zestawie Skrót utworzony na podstawie zawartości każdego pliku w zestawie i nazwy pliku. Wszystkie pliki tworzące zestaw muszą być w tym samym katalogu co plik zawierający manifest zestawu.
Informacje o odwołaniu do typu Informacje, na podstawie których środowisko uruchomieniowe mapuje odwołanie do typu na plik zawierający jego deklarację i implementację. Wykorzystywane do typów eksportowanych z zestawu.
Informacje o przywoływanych zestawach Lista innych zestawów, do których prowadzą statyczne odwołania z zestawu. Każde odwołanie zawiera nazwę zależnego zestawu, metadane zestawu (wersja, kultura, system operacyjny itd.) oraz klucz publiczny, jeśli zestaw ma silną nazwę.

Niektóre informacje w manifeście zestawu można dodawać i zmieniać w kodzie za pomocą atrybutów zestawu. M.in. można zmienić informacje o wersji i atrybuty informacyjne, w tym dotyczące znaku towarowego, praw autorskich, produktu, firmy i danych informacyjnych wersji. Aby uzyskać pełną listę atrybutów zestawu, zobacz Ustawianie atrybutów zestawu.

Zobacz też