2015-09-14 9 views
10

Publikuję aplikację sieci Web z programu Visual Studio 2013. Potrzebuję folderów, które nie są częścią projektu, i wyklucz niektóre foldery (niektóre z nich oprócz projekt, niektóre nie z wyjątkiem projektu). Poszedłem więc do właściwości mojego projektu i ustawić Items To Deploy pole do All files in this project folder jak widać poniżej:Jak wykluczyć foldery z publikowania/wdrażania aplikacji WWW programu Visual Studio 2013

enter image description here

Wtedy zacząłem szukać sposobu, aby wykluczyć foldery z All files in this project folder. Znalazłem this stronę, która wyraźnie stwierdza

Visual Studio UI nie narażać wszystkich ustawień wdrożeniowych które można konfigurować. Na przykład nie można użyć interfejsu użytkownika do wykluczenia pojedynczego folderu z wdrożenia. Można to jednak zrobić, edytując pliki przechowujące ustawienia konfiguracyjne za pomocą . Dla każdego profilu publikowania istnieje plik .pubxml, który można edytować bezpośrednio.

Ta strona zawiera linki do stron wyjaśniających, jak edytować plik, ale nie wyjaśnia, w jaki sposób wykluczyć określone foldery.

znalazłem innych witryn (this one w zestawie), który wyjaśnił, jak wykluczyć foldery w starszych wersjach Visual Studio stosując następujący tag w pliku csproj:

<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' "> 
    ... 
    <ExcludeFilesFromDeployment>File1.aspx;File2.aspx</ExcludeFilesFromDeployment> 
    <ExcludeFoldersFromDeployment>Folder1;Folder2</ExcludeFoldersFromDeployment> 
</PropertyGroup> 

ale wydaje elementy XML dla pliku csproj nie są już istotne w VS2013. Czytałem gdzieś (nie pamiętam gdzie teraz) sugestię, że ten element został przeniesiony do pliku [PublishProfileName].pubxml, ale próba tego nie zadziałała.

Jestem pewien, że jest sposób na zrobienie tego w Visual Studio 2013, ale na moje życie, nie wiem jak. Znalazłem tuzin powiązanych pytań tutaj na Stackoverflow, jak również na innych forach, ale żadne z rozwiązań nie działa dla mnie w VS2013. Każda pomoc jest doceniana.

Odpowiedz

15

Elementy te zostały faktycznie przeniesione do pliku .pubxml w Visual Studio 2012 i nowszych. Here's the relevant documentation in MSDN o wykluczaniu plików i folderów z wdrożenia.

znajdź odpowiedni plik .pubxml pod Properties/profili publikowania w programie Visual Studio Solution Explorer i dodać nowy element ExcludeFilesFromDeployment lub ExcludeFoldersFromDeployment pod elementem wymieniające pliki lub foldery PropertyGroup zostać wyłączone, rozdzielonych średnikiem.

Zauważam, że te elementy nie pojawiły się jako opcje w wyborze IntelliSense, gdy wpisałem je do Visual Studio 2015 - ale projekt został skompilowany, a wyłączenie nadal działało.

+0

zauważyłem w VS 2015 wydaje IntelliSense nie lubi '' tag w pliku .pubxml. Działa poprawnie, po prostu robi niebieską linię falującą, mówiąc, że jest nieważna. – nickvans

0

w pliku cpproj dodaniu tych folderów i plików, które nie mają być uwzględnione w procesie wydawniczym jak ten

Powiązane problemy