2014-05-15 12 views
6

Ho un progetto di applicazione web asp.net che sto pubblicando tramite Build> Pubblica all'interno di visual studio 2013. Sto pubblicando sul file system, utilizzando l'opzione di precompilazione selezionata. Il mio progetto ha selezionato "Solo i file necessari per eseguire questa applicazione" nella schermata delle impostazioni di Package/Publish Web. Tuttavia, indipendentemente da ciò che faccio, i file .cs (code-behind) e designer.cs vengono copiati nella cartella di output durante la pubblicazione.L'applicazione Web non pubblica senza file .cs

Questo progetto è stato creato utilizzando la funzionalità File> Nuovo progetto> Applicazione Web ASP.NET in Visual Studio. Quindi i file da un progetto di sito Web sono stati aggiunti all'applicazione e il comando "converti in applicazione web" è stato eseguito su di esso dal menu di costruzione. La conversione in un'app Web sembra aver funzionato correttamente, ma non riesco a pubblicare senza i file .cs inclusi.

Che altro si deve fare per ottenere la pubblicazione di un'applicazione Web senza includere i file code-behind? Qualche idea su cosa posso esaminare?

Potrebbe esserci un'impostazione a livello della soluzione che sta causando questo? La nuova applicazione Web è stata aggiunta a una soluzione preesistente con circa una dozzina di altri progetti.

Un'altra cosa da notare è che quando creo una nuova app Web con Visual Studio in un nuovo progetto e pubblichiamo le stesse impostazioni, NON include i file .cs.

Ho anche provato a eliminare e quindi creare un nuovo profilo di pubblicazione.

+0

Fare clic su uno dei file di Cs, quindi cercare nella griglia proprietà (F4) per vedere che cosa l ' "azione Build" è impostato per il file Cs. –

+0

@JohnSaunders Build Action = Compila. – Rafe

+0

Hmmm .. Non quello che mi aspettavo. C'è un passaggio post-build? –

risposta

5

Ho appena risolto questo eliminando il mio vecchio profilo di pubblicazione e creando uno nuovo.

Il nuovo sembrava avere le stesse impostazioni di quello vecchio ma quando l'ho pubblicato non copiava i file .cs.

Modifica: Questa risposta è una bugia. C'era una differenza tra i due profili. Il nuovo profilo era in configurazione di rilascio.

Modifica 2: c'è un'impostazione nelle impostazioni del progetto che determina ciò che viene pubblicato. Seleziona "solo i file necessari per eseguire questa applicazione" dalla pagina seguente.

Publish Settings Page

0

scopre che ho aggiunto questa linea al mio file csproj prima, quando stavo cercando di ottenere il mio progetto per costruire sul nostro server di build. La rimozione è risolto il problema:

<Target Name="GatherAllFilesToPublish"></Target>