Le Sandbox Solution sono state sicuramente la novità più grossa di SharePoint 2010, novità che si è rivelata poi una delle basi per la customizzazione di SharePoint Online (Office 365). Che cos'è una Sandbox Solution lo dovreste ormai sapere (altrimenti, guardatevi questo video di Paolo). Quello che dovete sapere è che all'interno di Visual Studio 11 è stato fatto un particolare lavoro da parte del team di sviluppo che ci ha portato notevoli facilitazioni per la costruzione delle nostre soluzioni.

Per prima cosa l'intellisense nasconde in automatico tutte quei membri del modello ad oggetti di SharePoint 2010 che non possono essere utilizzati all'interno di una Sandbox Solution. In figura potete vedere che alla proprietà EventReceivers (di tipo SPEventReceiverDefinitionCollection) manca il metodo Add, che consultando la documentazione vedrete esplicitamente escluso da una soluzione di tipo Sandbox:

Visual Studio 11 for SharePoint Tip#3: miglior supporto alle Sandbox Solution

Questo risultato era raggiungibile già in passato installando i Visual Studio 2010 SharePoint Power Tools disponibili all'interno della code gallery di Microsoft. Ora invece è tutto integrato all'interno dell'IDE.

La seconda miglioria invece è legata ad una casistica specifica: quella in cui decido di passare manualmente da una Farm solution ad una Sandbox solution. In questo caso, Visual Studio 11 ferma la compilazione della nostra soluzione ritornandoci un errore specifico, il che ci ripara da errori in fase di run-time una volta effettuato il deploy della Sandbox Solution.

Visual Studio 11 for SharePoint Tip#3: miglior supporto alle Sandbox Solution

Mi sarebbe piaciuto tanto che venisse fuori un bell'errore anche se provassi ad utilizzare (per esempio) le classi SqlConnection, WebClient o una di quelle che effetuano delle operazioni che sono esplicitamente escluse dal contesto limitato di una Sandbox solution, ma niente ancora. Speriamo nella prossima release.

Infine, per evitare errori in fase di deploy delle nostre applicazioni Sandbox, Visual Studio 11 ci indica tramite la scritta "Farm Solution Only" quali sono i template di elemento che possiamo utilizzare senza problemi all'interno della nostra soluzione e quali invece sono disponibili solo in una Farm Solution. Se scegliamo quindi di aggiungere un nuovo elemento in una Sandbox Solution, ecco la schermata che ci ritroviamo:

Visual Studio 11 for SharePoint Tip#3: miglior supporto alle Sandbox Solution

La parte relativa allo sviluppo di applicazioni Sandbox è stata sicuramente quella più curata in questa Developer Preview di Visual Studio 11, il che conferma l'attenzione di Microsoft per questa funzionalità. Vedremo poi quali altre funzionalità e/o migliorie ci lasceranno a riguardo nella prossima release di Visual Studio e, soprattutto, nella prossima versione di SharePoint.

Vi ricordo che per provare queste novità dovete installare la developer preview di Visual Studio 11, che potete trovare a questo indirizzo:
- http://www.microsoft.com/download/en/details.aspx?id=27543 (web installer)
- http://www.microsoft.com/download/en/details.aspx?id=27538 (offline installer)