Prima o poi capita a tutti di dover installare e fare il deploy di una solution in SharePoint, vuoi perché le funzionalità di base spesso non sono facili da far collaborare o si hanno delle soluzioni personalizzate implementate da terzi. Un modo semplice per gestire queste soluzioni è usando semplicemente PowerShell, che trovate nel menù :
start –>Microsoft SharePoint 2010 Products->SharePoint 2010 Management Console
questa console vi permetterà di gestire il vostro sito SharePoint direttamente tramite dei comandi, con le varie opzioni etc.. Vediamo ora una lista dei comandi più utilizzati:
Aggiungere una solution:
Add-SPSolution c:\code\SharePointProject2\bin\debug\SharePointProject2.wsp

Installare una solution:
Install-SPSolution –Identity SharePointProject2.wsp –WebApplication http://sp2010 –GACDeployment
per sapere il significato dei vari parametri che potete attivare, su tutti i comandi, basta digitare: Get-Help <Comando>
Inoltre,se dovesse darvi un’ errore del genere:

niente paura, significa solamente che il vostro file .wsp non supporta lo scope per la singola web application e dovete farne il deploy in globally, che si ottiene semplicemente togliendo –WebApplication http://sp2010 dal comando.
Upgrade solution:
Update-SPSolution –Identity SharePointProject2.wsp –LiteralPath c:\code\SharePointProject2\bin\debug\SharePointProject2.wsp –GACDeployment
Disinstallare solution:
Uninstall-SPSolution –Identity SharePointProject2.wsp –WebApplication http://sp2010
Rimuovere solution:
Remove-SPSolution –Identity SharePointProject2.wsp
Usare i parametri per impostare i filtri dinamicamente è una delle pratiche più diffuse per la personalizzazione lato amministrativo di SharePoint 2010. Ecco in breve i passaggi per impostare un filtro dinamico su una lista SharePoint tramite la web part Data Filter:
- Inserire nella pagina le 2 wp data filter (df) e la lista da filtrare
- Aprire tramite il Designer la pagina e creare sulla lista 2 parametri, inizio e fine
- Aprire le proprietà dei df e impostare l’invio dei filtri come parametri sulla lista
- Impostare un filtro sulla tabella (lo trovate sempre sulla ribbon), e mettete le relazioni che vi interessano; in questo caso maggiore di inizio e minore di fine.
Alla fine dovreste trovarvi un risultato del genere:

Se avete bisogno di una guida passo passo, vi consiglio di dare uno sguardo a:
un’ottima guida illustrata in ogni passaggio, impossibile sbagliare!
Di recente mi hanno chiesto se sia possibile installare un server SharePoint su una piattaforma Windows che non sia Windows server, ebbene, la risposta è ovviamente si!

Dovere per forza aver installato SP2010 per poter utilizzare visual studio come ambiente di sviluppo (con il designer non è necessario, ma ovviamente non da lo stesso supporto di VS), è una limitazione non da poco. Fortunatamente, essendo Windows 7 basato su Windows server, supporta l’installazione di SP2010 senza troppi intoppi, ricordate semplicemente che ci sarà bisogno comunque di specifiche HW abbastanza elevate per avere in esecuzione SharePoint e VS contemporaneamente!
Un consiglio, non saltate la parte di preconfigurazione, potrebbe costringervi DOPO aver installato tutto, a dover ricominciare daccapo..ecco il link alla guida ufficiale!
Ultimamente abbiamo avuto l’esigenza, che poi si è rivelata utile per tanti casi, di avere un campo di lookup di un elenco SharePoint, filtrato. Siccome in SP2010 non è previsto di default, come tutti i buoni developer ho semplicemente googolato (perdonatemi il neologismo) la mia domanda: creare lookup filtrato.
Fra i tanti (di cui molti infruttuosi) link che ho trovato ne ho selezionati alcuni fra i più gustosi, eccoveli qui!
- PeppeDotnet: un porting del famoso progetto "SharePoint Filtered Lookup Field" che permette di usare le stesse funzionalità per MOSS 2007
- FilterZen:un progetto che da la possibilità di creare liste filtrate dinamicamente, di scegliere in un ampio raggio di filtri preimpostati e ovviamente di crearne di custom!
In più io vi consiglierei di dare anche un’occhiata alle web part già presenti all’interno di SharePoint 2010 che danno la possibilità, senza installare nulla, di impostare filtri non presenti di default sulla lista:

Basta semplicemente selezionare il tipo di filtro che vogliamo inserire nella visualizzazione, dopodiché impostare i parametri:

e se le vostre esigenze sono state prese in considerazione da mamma Microsoft, non dovete fare altro!
Spero vi sia stato d’aiuto 
Il primo argomento che mi ha visto impegnato per un paio di giorni di sviluppo, è stato sicuramente come registrare un file .js esterno quando non lo si può inserire nella master del sito.
La difficoltà maggiore non è stata la stesura del codice in se, ma la mancanza di un riferimento ufficiale (best practice) per l'inserimento di js.
Magari avete trovato su Google molti che consigliano di usare " Page.ClientScript.RegisterStartupScript " che è uno dei modi sicuramente per risolvere la questione ma non è quello più veloce e soprattutto non è neanche consigliato..
Come risolvere? come avrete sicuramente pensato: un literal.
Ecco un esempio di uno slider fatto con Mootools:
![slider_sharepoint_thumb[9] slider_sharepoint_thumb[9]](http://dotnetcampania.org/cfs-file.ashx/__key/CommunityServer.Blogs.Components.WeblogFiles/golden.metablogapi/7701.slider_5F00_sharepoint_5F00_thumb9_5F00_thumb_5F00_2964D9C0.jpg)
Lo script in questione si prende in ingresso semplicemente una tabella html, quindi la semplicità di inserire un repeater dopo aver usato spmetal per la creazione delle classi per la gestione delle liste SP è banale e non verrà trattata in questo articolo.
L’inserimento dello script nel codice della nostra web part è mostrato nella prossima figura:
![codice_slider_thumb[2] codice_slider_thumb[2]](http://dotnetcampania.org/cfs-file.ashx/__key/CommunityServer.Blogs.Components.WeblogFiles/golden.metablogapi/2804.codice_5F00_slider_5F00_thumb2_5F00_thumb_5F00_2AE5F5D4.jpg)
Alla fine basta semplicemente fare un sb.toString() per passarlo al literal ed il gioco è fatto!
C'è da dire che questo metodo è quello consigliato per semplicità e trasparenza.