2014-10-31 16 views
5

Mam dość prosty projekt MVC 5 w Visual Studio 2013. Udało mi się skonfigurować publikowanie za pośrednictwem Web Deploy na serwerze. Chcę wykluczyć pewien plik z wdrożenia bez konieczności podglądu/odznaczenia go za każdym razem, kiedy go publikuję (publikuję wersję Release).ExcludeFilesFromDeployment nie działa w Visual Studio 2013 Publish Web

Zmodyfikowałem plik .csproj dla projektu, aby dołączyć tag <ExcludeFilesFromDeployment>.

<Project...> 
    <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' "> 
    ... 
    <ExcludeFilesFromDeployment>Library-that-is-not-good-for-server.dll</ExcludeFilesFromDeployment> 
    </PropertyGroup> 

Ale nic się nie zmienia/plik wciąż musi być odznaczony, aby go dodać, gdy przejdę do publikacji w VS2013.

Próbowałem również dodać przed biblioteką bin\, na wszelki wypadek. Nie wspominając, ostrzeżenie wyskakuje do elementu, który mówi „The element 'PropertyGroup' in namespace 'http://schemas.microsoft.com/developer/msbuild/2003' has invalid child element 'ExcludeFilesFromDeployment' in namespace 'http://schemas.microsoft.com/developer/msbuild/2003'. ...”

dokumentacji Microsoftu, że udało mi się znaleźć w wyszukiwaniach dotyczących wyłączeniem pliki z wdrożenia, a znacznik ExcludeFilesFromDeployment, http://msdn.microsoft.com/en-us/library/ee942158(v=vs.110).aspx, twierdzą, że instrukcje dotyczy tylko VS2012 i częściowo VS2010. Czy ktoś wie, co się zmieniło w VS2013 lub co robię źle?

Odpowiedz

5

Należy dodać w pliku profileName.pubxml. profileName.pubxml położenie pliku jest:

my project ----> Properties ----> PublishProfiles ---> profileName.pubxml 

Przykład:

<Project ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003"> 
    <PropertyGroup> 
    <ExcludeFilesFromDeployment> 
    Library-that-is-not-good-for-server.dll 
    </ExcludeFilesFromDeployment> 

'''    '''' 
+1

Wreszcie miał okazję przetestować. Pracowałem z 'bin \ Library-that-is-not-good-for-server.dll', odwołując się do biblioteki w katalogu bin z katalogu głównego witryny. –

+0

Nie jest oczywiste, że musisz zrobić bin \ some.dll, ale w przeciwnym razie to nie zadziała –

0

Prawdopodobnie trzeba mieć następującą definicję również w „pliku profileName'.pubxml:

<DeleteExistingFiles>False</DeleteExistingFiles> 

proszę usuń wszystkie pliki z Twojej lokalizacji publikacji Temp (normalnie obj \ Release \ Package \ PackageTmp) po wykluczeniu niektórych plików lub katalogów.

Powiązane problemy