Udostępnij za pośrednictwem


Scal kod XML w manifestach funkcji i pakietów

Funkcje i pakiety są definiowane przez pliki manifestu XML. Te spakowane manifesty to kombinacja danych generowanych przez projektantów i niestandardowy kod XML wprowadzony w szablonie manifestu przez użytkowników. W czasie pakowania program Visual Studio scala niestandardowe instrukcje XML z plikiem XML dostarczonym przez projektanta w celu utworzenia spakowanego pliku manifestu XML. Podobne elementy, z wyjątkami zanotowane w dalszej części scalania wyjątków, są scalane, aby uniknąć błędów walidacji XML po wdrożeniu plików w programie SharePoint i w celu zwiększenia wydajności plików manifestu.

Modyfikowanie manifestów

Nie można bezpośrednio modyfikować spakowanych plików manifestu, dopóki nie wyłączysz funkcji lub projektantów pakietów. Można jednak ręcznie dodać niestandardowe elementy XML do szablonu manifestu za pomocą funkcji i projektantów pakietów lub edytora XML. Aby uzyskać więcej informacji, zobacz How to: Customize a SharePoint Feature (Instrukcje: dostosowywanie funkcji programu SharePoint) i How to: Customize a SharePoint solution package (Dostosowywanie pakietu rozwiązania sharePoint).

Proces scalania manifestu funkcji i pakietu

Podczas łączenia elementów niestandardowych wraz z elementami udostępnionymi przez projektanta program Visual Studio używa następującego procesu. Program Visual Studio sprawdza, czy każdy element ma unikatową wartość klucza. Jeśli element nie ma unikatowej wartości klucza, jest dołączany do spakowanego pliku manifestu. Podobnie nie można scalić elementów, które mają wiele kluczy. W związku z tym są one dołączane do pliku manifestu.

Jeśli element ma unikatowy klucz, program Visual Studio porównuje wartości projektanta i kluczy niestandardowych. Jeśli wartości są zgodne, scalają się z pojedynczą wartością. Jeśli wartości będą się różnić, wartość klucza projektanta zostanie odrzucona i zostanie użyta niestandardowa wartość klucza. Kolekcje są również scalane. Jeśli na przykład wygenerowany przez projektanta kod XML i niestandardowy kod XML zawierają kolekcję Zestawy, spakowany manifest zawiera tylko jedną kolekcję zestawów.

Scal wyjątki

Program Visual Studio scala większość elementów XML projektanta wraz z podobnymi niestandardowymi elementami XML, o ile mają jeden unikatowy atrybut identyfikujący. Jednak niektóre elementy nie mają unikatowego identyfikatora wymaganego do scalania XML. Te elementy są nazywane wyjątkami scalania. W takich przypadkach program Visual Studio nie scala niestandardowych elementów XML wraz z elementami XML dostarczonymi przez projektanta, ale dołącza je do spakowanego pliku manifestu.

Poniżej znajduje się lista wyjątków scalania dla funkcji i plików manifestu XML pakietu.

Projektant XML, element
Projektant funkcji AktywacjaZależność
Projektant funkcji UpgradeAction
Projektant pakietów Sejf Control
Projektant pakietów CodeAccessSecurity

Elementy manifestu funkcji

Poniższa tabela zawiera listę wszystkich elementów manifestu funkcji, które można scalić i ich unikatowy klucz używany do dopasowywania.

Nazwa elementu Klucz unikatowy
Funkcja (wszystkie atrybuty) Nazwa atrybutu (każda nazwa atrybutu elementu funkcji jest unikatowym kluczem).
ElementFile Lokalizacja
ElementManifests/ElementManifest Lokalizacja
Właściwości/właściwość Key
CustomUpgradeAction Nazwisko
CustomUpgradeActionParameter Nazwisko

Uwaga

Ponieważ jedynym sposobem modyfikowania elementu CustomUpgradeAction jest niestandardowy edytor XML, efekt nie scalania jest niski.

Elementy manifestu pakietu

Poniższa tabela zawiera listę wszystkich elementów manifestu pakietu, które można scalić i ich unikatowy klucz używany do dopasowywania.

Nazwa elementu Klucz unikatowy
Rozwiązanie (wszystkie atrybuty) Nazwa atrybutu (każda nazwa atrybutu elementu rozwiązania jest unikatowym kluczem).
ApplicationResourceFiles/ApplicationResourceFile Lokalizacja
Zestawy/zestawy Lokalizacja
ClassResources/ClassResources Lokalizacja
DwpFiles/DwpFile Lokalizacja
FeatureManifests/FeatureManifest Lokalizacja
Zasoby/zasób Lokalizacja
RootFiles/RootFile Lokalizacja
SiteDefinitionManifests/SiteDefinitionManifest Lokalizacja
WebTempFile Lokalizacja
TemplateFiles/TemplateFile Lokalizacja
SolutionDependency Identyfikator rozwiązania

Ręczne dodawanie wdrożonych plików

Niektóre elementy manifestu, takie jak ApplicationResourceFile i DwpFiles, określają lokalizację zawierającą nazwę pliku. Jednak dodanie wpisu nazwy pliku do szablonu manifestu nie powoduje dodania pliku bazowego do pakietu. Musisz dodać plik do projektu, aby uwzględnić go w pakiecie i odpowiednio ustawić jego właściwość Typ wdrożenia.