Quando sviluppiamo le nostre personalizzazioni su SharePoint 2010 utilizzando gli strumenti messi a disposizione da Visual Studio 2010, ci accorgiamo che tutte le nostre feature vengono attivate in automatico ogni volta che viene lanciata l'operazione di deploy della soluzione sul sito SharePoint scelto in fase di creazione del progetto.

Attivazione automatica della feature in fase di deployment da Visual Studio 2010

Questa è la configurazione di default che abbiamo all'interno dei tool di sviluppo per SharePoint 2010. Molte volte però, questa configurazione può impedire le nostre azioni di debug del codice o delle funzionalità implementate.
Pensiamo solo allo sviluppo di un event receiver che gestisce gli eventi di attivazione o di disattivazione della feature. In questo caso specifico ad esempio, non siamo in grado di fare debug del nostro codice, in quanto Visual Studio 2010 non permette di effettuare l'operazione di deployment e quella di debug contemporaneamente.
Proprio per ovviare a questo problema, è possibile modificare tale configurazione e scegliere di non attivare la feature in automatico. Per farlo basta entrare nelle proprietà del progetto dalla toolbox "Solution Explorer", scegliere il tab "SharePoint" e selezionare la configurazione "No Activation".

Cambio della configurazione di deployment delle soluzioni SharePoint 2010 in Visual Studio 2010

Così facendo, ad ogni successivo deployment non verranno attivate le feature della nostra soluzione in automatico, ma potremmo farlo noi da interfaccia web (o tramite l'utility STSADM o, ancora, tramite PowerShell) per poi metterci in debug del nostro codice.

Mancata attivazione automatica della feature in fase di deployment da Visual Studio 2010

Così come abbiamo potuto disabilitare l'attivazione in automatico della feature all'interno del sito SharePoint scelto in fase di creazione del progetto, abbiamo anche la possibilità di creare configurazioni personalizzate in cui inserire operazioni di deploy e retract della soluzione, reciclo degli application pool, attivazione di feature e esecuzione di comandi pre/post deployment.