Udostępnij za pośrednictwem


Importowanie elementów z istniejącej witryny programu SharePoint

Szablon projektu Import SharePoint Solution Package umożliwia ponowne użycie elementów, takich jak typy zawartości i pola z istniejących witryn programu SharePoint w nowym rozwiązaniu programu Visual Studio SharePoint. Chociaż większość importowanych rozwiązań można uruchamiać bez modyfikacji, istnieją pewne ograniczenia i problemy, które należy wziąć pod uwagę, szczególnie w przypadku modyfikowania elementów po ich zaimportowaniu.

Uwaga

Aby zaimportować przepływy pracy wielokrotnego użytku, użyj szablonu projektu Importuj przepływ pracy wielokrotnego użytku. Aby uzyskać więcej informacji, zobacz Wytyczne dotyczące importowania przepływów pracy wielokrotnego użytku.

Obsługiwane rozwiązania programu SharePoint

Program Visual Studio 2012 w pełni obsługuje importowanie rozwiązań utworzonych w programach SharePoint Foundation i SharePoint Server.

Program Visual Studio 2012 nie obsługuje importowania rozwiązań utworzonych w następujących aplikacjach:

  • Windows SharePoint Services 3.0

  • Microsoft Office SharePoint Server 2007

  • Visual Studio 2008

  • Microsoft SharePoint Designer 2007

  • Visual Studio 2010

    Chociaż często można pomyślnie importować rozwiązania utworzone przez te aplikacje, ta funkcja nie jest testowana i nie jest obsługiwana.

Ograniczenia importu elementów

Chociaż większość elementów programu SharePoint można zaimportować z istniejącego pliku .wsp , następujące elementy nie są obsługiwane i mogą wymagać modyfikacji, aby działały poprawnie:

  • Jednostki usługi BDC

  • Elementy skojarzenia przepływu pracy kodu

  • Przepływy pracy kodu

  • Visual Web Part (ascx)

  • Usługi sieci Web (asmx)

  • Powiązania typu zawartości

  • Odbiorniki zdarzeń

  • Definicje listy (szablony)

  • Definicje witryny

    Podczas eksportowania rozwiązania z programu SharePoint Foundation lub programu SharePoint Server te elementy są automatycznie wykluczane z pliku .wsp . Jednak inne pliki wsp wygenerowane na podstawie nieobsługiwanych narzędzi mogą zawierać te elementy. (Zobacz "Obsługiwane rozwiązania programu SharePoint" we wcześniejszej części tego tematu).

Co się stanie po zaimportowaniu rozwiązania

Podczas importowania rozwiązania przy użyciu szablonu Importuj pakiet rozwiązania programu SharePoint program Visual Studio kopiuje całą zawartość pliku .wsp i próbuje uzgodnić i zachować jak najwięcej skojarzeń i odwołań między zaimportowanymi elementami i ich plikami.

Wszystkie zaimportowane elementy kopiowane do odpowiednich folderów w Eksplorator rozwiązań. Na przykład typy zawartości są wyświetlane w folderze Typy zawartości i wystąpienia listy są wyświetlane w obszarze Wystąpienia listy. Pliki skojarzone z importowanym elementem są również kopiowane do folderu elementu. Na przykład zaimportowane wystąpienie listy zawiera jego moduły, formularze i strony ASPX.

Elementy zależne

Jeśli wybierzesz element w kreatorze Importuj pakiet rozwiązania programu SharePoint, ale nie jego elementy zależne, zostanie wyświetlone okno komunikatu informujące o tym, że elementy zależne muszą być również wybrane przed zaimportowaniem.

Co to są funkcje?

Użytkownicy programu SharePoint Designer mogą zobaczyć nieoczekiwane pliki nazywane funkcjami w zaimportowanych rozwiązaniach w Eksplorator rozwiązań. Mimo że funkcje istniały w rozwiązaniu SharePoint Designer, były ukryte przed widokiem. Funkcje są teraz widoczne w programie Visual Studio.

Funkcje to kontenery elementów programu SharePoint. Każda funkcja przechowuje odwołanie do każdego elementu, takiego jak typy zawartości i definicje list, które zawiera. Podczas importowania rozwiązania program Visual Studio konfiguruje funkcje dla wszystkich zaimportowanych elementów i próbuje zachować relacje funkcji-element dla plików. Wszystkie pliki, których nie można rozpoznać, są umieszczane w folderze Inne zaimportowane pliki .

Aby uzyskać więcej informacji na temat funkcji, zobacz Tworzenie rozwiązań programu SharePoint i Praca z funkcjami.

Obsługa przypadków specjalnych

W niektórych przypadkach program Visual Studio nie może uzgodnić elementu z jego plikami zależnymi. Wszystkie pliki, których program Visual Studio nie może rozpoznać, są wyświetlane w folderze Inne zaimportowane pliki. Ponadto ich właściwości DeploymentType są ustawione na Wartość NoDeployment , aby nie były wdrażane z rozwiązaniem.

Jeśli na przykład zaimportujesz definicję listy ExpenseForms, definicja listy o tej nazwie zostanie wyświetlona w folderze Definicje listy w Eksplorator rozwiązań wraz z jego Elements.xml i plikami Schema.xml. Jednak skojarzone z nim formularze ASPX i HTML można umieścić w folderze o nazwie ExpenseForms w folderze Inne zaimportowane pliki . Aby ukończyć importowanie, przenieś te pliki w definicji listy ExpenseForms w Eksplorator rozwiązań i zmień właściwość DeploymentType dla każdego pliku z NoDeployment na ElementFile.

Podczas importowania odbiorników zdarzeń plik Elements.xml jest kopiowany do właściwej lokalizacji, ale należy ręcznie dołączyć zestaw do pakietu rozwiązania, aby został wdrożony za pomocą rozwiązania. Aby uzyskać więcej informacji o tym, jak to zrobić, zobacz How to: Add and remove additional assemblies (Instrukcje: dodawanie i usuwanie dodatkowych zestawów).

Podczas importowania przepływów pracy formularze programu InfoPath są kopiowane do folderu Inne zaimportowane pliki . Jeśli plik wsp zawiera szablon sieci Web, zostanie ustawiony jako strona uruchamiania w Eksplorator rozwiązań.

Importowanie pól i torby właściwości

Podczas importowania rozwiązania zawierającego wiele pól wszystkie oddzielne definicje pól są scalane w jeden plik Elements.xml w węźle w Eksplorator rozwiązań o nazwie Pola. Podobnie wszystkie wpisy torby właściwości są scalane z plikiem Elements.xml w węźle o nazwie PropertyBags.

Pola w programie SharePoint to kolumny określonego typu danych, takie jak tekst, wartość logiczna lub wyszukiwanie. Aby uzyskać więcej informacji, zobacz Blok konstrukcyjny: kolumny i typy pól. Torby właściwości umożliwiają dodawanie właściwości do obiektów w programie SharePoint— wszystko, od farmy do listy w witrynie programu SharePoint. Torby właściwości są implementowane jako tabela skrótów nazw i wartości właściwości. Aby uzyskać więcej informacji, zobacz Zarządzanie konfiguracją programu SharePoint lub ustawieniami torby właściwości programu SharePoint.

Usuwanie elementów w projekcie

Większość elementów w rozwiązaniach programu SharePoint ma co najmniej jeden element zależny. Na przykład wystąpienia listy zależą od typów zawartości i typów zawartości, od pól. Po zaimportowaniu rozwiązania programu SharePoint program Visual Studio nie powiadamia o żadnych problemach referencyjnych w przypadku usunięcia elementu w rozwiązaniu, ale nie jego elementów zależnych, dopóki nie podejmiesz próby wdrożenia rozwiązania. Jeśli na przykład zaimportowane rozwiązanie ma wystąpienie listy, które zależy od typu zawartości i usuniesz ten typ zawartości, może wystąpić błąd podczas wdrażania. Błąd występuje, jeśli element zależny nie jest obecny na serwerze programu SharePoint. Podobnie, jeśli usunięty element ma również powiązaną torbę właściwości, usuń te wpisy torby właściwości z pliku PropertyBags Elements.xml . W związku z tym, jeśli usuniesz jakiekolwiek elementy z zaimportowanego rozwiązania i wystąpią błędy wdrażania, sprawdź, czy należy również usunąć jakiekolwiek elementy zależne.

Przywracanie brakujących atrybutów funkcji

Podczas importowania rozwiązań niektóre opcjonalne atrybuty funkcji są pomijane z zaimportowanego manifestu funkcji. Jeśli chcesz przywrócić te atrybuty w nowym pliku funkcji, zidentyfikuj brakujące atrybuty, porównując oryginalny plik funkcji z nowym manifestem funkcji i postępuj zgodnie z instrukcjami w temacie Instrukcje: Dostosowywanie funkcji programu SharePoint.

Wykrywanie konfliktów wdrażania nie jest wykonywane na wbudowanych wystąpieniach listy

Program Visual Studio nie wykonuje wykrywania konfliktów wdrażania w wbudowanych wystąpieniach listy (czyli domyślnych wystąpień listy, które są dostarczane z programem SharePoint). Wykrywanie konfliktów nie jest wykonywane, aby uniknąć zastępowania wbudowanych wystąpień listy w programie SharePoint. Wbudowane wystąpienia listy są nadal wdrażane lub aktualizowane, ale nigdy nie są usuwane ani zastępowane. Aby uzyskać więcej informacji, zobacz Rozwiązywanie problemów z pakowaniem i wdrażaniem programu SharePoint.

Importowanie przepływów pracy programu SharePoint Server 2010

Jeśli zaimportujesz przepływ pracy utworzony w programie SharePoint Server, nie zostanie on uruchomiony poprawnie po jego wdrożeniu. Przepływ pracy nie działa poprawnie, ponieważ brakuje niektórych zestawów, a przepływy pracy programu SharePoint Server zawierają formularze programu InfoPath, które nie są obecnie obsługiwane w rozwiązaniach przepływu pracy programu Visual Studio. Zaimportowane przepływy pracy programu SharePoint Server można jednak wykonać poprawnie po naprawieniu niektórych elementów, takich jak dodawanie odwołań do zestawów programu SharePoint Server i ponowne łączenie formularzy programu InfoPath. Aby uzyskać więcej informacji, zobacz Importowanie przepływów pracy programu SharePoint Server 2010.

Limit znaków nazwy elementu

Program Visual Studio ma limit 260 znaków całkowitych dla nazw elementów projektu i projektu, w tym ścieżki. Jeśli podczas importowania rozwiązania nazwa elementu przekroczy ten limit, zostanie wyświetlony błąd:

Określona ścieżka, nazwa pliku lub oba są za długie. W pełni kwalifikowana nazwa pliku musi być mniejsza niż 260 znaków, a nazwa katalogu musi być mniejsza niż 248 znaków.

Po wystąpieniu tego błędu element nie zostanie utworzony. Ten problem występuje najczęściej w przypadku zaimportowanych modułów. Aby uniknąć tego problemu, wykonaj następujące czynności:

  • Użyj krótkich nazw projektu podczas wprowadzania ich w oknie dialogowym Dodawanie nowego projektu .

  • Utwórz projekt w lokalizacji tak blisko folderu głównego, jak to możliwe, aby skrócić ścieżkę.

Atrybut SharePointProductVersion

W przypadku importowania rozwiązania utworzonego we wcześniejszej wersji programu SharePoint, takiego jak Windows SharePoint Services 3.0 lub Microsoft Office SharePoint Server 2007, zmień wartość atrybutu SharePointProductVersion w manifeście pakietu na 12.0 lub wstaw kontrolkę menedżera skryptów do wszystkich zaimportowanych stron sieci Web i pozostaw wartość SharePointProductVersion ustawioną na 14.0. W przeciwnym razie zaimportowane formularze sieci Web nie będą wyświetlane w programie SharePoint.

Tło

Rozwiązania w programie SharePoint Foundation i programie SharePoint Server zawierają atrybut o nazwie SharePointProductVersion. Program SharePoint używa tego atrybutu w manifestach pakietu do określenia wersji programu SharePoint, dla której jest przeznaczone rozwiązanie. Dwie prawidłowe wartości to 12.0 i 14.0. Wartość 12.0 wskazuje, że element jest przeznaczony dla programu Windows SharePoint Services 3.0 lub Microsoft Office SharePoint Server 2007; wartość 14.0 wskazuje, że element jest przeznaczony dla programu SharePoint Foundation lub SharePoint Server.

W przypadku zwiększonych zabezpieczeń podczas renderowania stron ASPX program SharePoint Foundation i program SharePoint Server wymagają, aby wszystkie strony ASPX lub wzorcowe zawierały kontrolkę menedżera skryptów. Aby uzyskać więcej informacji na temat menedżera skryptów, zobacz ScriptManager Control Overview (Omówienie kontrolki ScriptManager). Ponieważ kontrolka menedżera skryptów nie była dostępna w usługach Windows SharePoint Services 3.0 i Microsoft Office SharePoint Server 2007, należy je dodać do dowolnej strony programu Windows SharePoint Services 3.0 lub Microsoft Office SharePoint Server 2007 uaktualnionej do programu SharePoint Foundation lub SharePoint Server. Strony ASPX korzystające ze standardowej strony wzorcowej nie wymagają kontrolki menedżera skryptów, ponieważ są one już dodawane do standardowej strony wzorcowej. Jednak strony ASPX, które nie używają strony wzorcowej lub korzystające z niestandardowej strony wzorcowej, muszą dodać kontrolkę skryptu, aby pracować w programie SharePoint Foundation lub SharePoint Server.

Brak kontrolki menedżera skryptów może być problemem podczas importowania programu Windows SharePoint Services 3.0 lub programu Microsoft Office SharePoint Server 2007 do programu Visual Studio 2010, ponieważ atrybut SharePointProductVersion wszystkich nowych projektów jest ustawiony na 14.0. Jeśli wdrożysz uaktualniony projekt z formularzem sieci Web bez menedżera skryptów, formularz nie będzie wyświetlany w programie SharePoint.

Zobacz też