Chi si trova ad installare Farm SharePoint 2010 si sarà sicuramente imbattuto in un errore tracciato da Event Viewer relativo al TaxonomyPicker.ascx.
Impossibile caricare il file del modello di controllo /_controltemplates/TaxonomyPicker.ascx: Could not load type 'Microsoft.SharePoint.Portal.WebControls.TaxonomyPicker' from assembly 'Microsoft.SharePoint.Portal, Version=14.0.0.0, Culture=neutral, PublicKeyToken=71e9bce111e9429c'.
Si tratta in realtà di un errore piuttosto innocuo, su cui occorre riporre la giusta attenzione (si tratta di un refuso, in quanto il controllo in questione non è più utilizzato). Tuttavia, per i puristi che desiderano avere un Event Viewer pulito, ecco alcune indicazioni in più.
Quando una Web application SharePoint parte per la prima volta, i controlli vengono "compilati". Controlli contenuti nel folder "C:\Program Files\Common Files\Microsoft Shared\Web Server Extensions\14\TEMPLATE\CONTROLTEMPLATES" e mappati sulla virtual directory "/_controltemplates" (compreso il controllo "TaxonomyPicker.ascx").
I controlli vengono richiamati dalle DLL di SharePoint, ed il controllo incriminato non è più presente sulle DLL di SharePoint (in particolare si cerca di richiamarlo dalla DLL Microsoft.SharePoint.Portal).
Un possibile workaround è quello di rinominare il controllo taxonomypicker.ascx in taxonomypicker.ascx.old (i più drastici suggeriscono l'eliminazione). A seguito di un aggiornamento o dell'applicazione di una hotfix però potrebbe ricomparire il file taxonomypicker.ascx, e quindi servirà ripetere la rinomina del file.
Un'altra strada potrebbe essere la seguente:
- Accedi al folder C:\Program Files\Common Files\Microsoft Shared\Web Server Extensions\14\TEMPLATE\CONTROLTEMPLATES
- Apri con Notepad il file TaxonomyPicker.ascx
- Individua la seguente riga:
<%@ Control className="TaxonomyPickerControl" Language="C#" Inherits="Microsoft.SharePoint.Portal.WebControls.TaxonomyPicker,Microsoft.SharePoint.Portal, Version=14.0.0.0, Culture=neutral, PublicKeyToken=71e9bce111e9429c" %> - Sostituisci ‘,′ con una virgola ‘,’
in modo che risulti qualcosa del genere:
<%@ Control className="TaxonomyPickerControl" Language="C#" Inherits="Microsoft.SharePoint.Portal.WebControls.TaxonomyPicker, Microsoft.SharePoint.Portal, Version=14.0.0.0, Culture=neutral, PublicKeyToken=71e9bce111e9429c" %> - Salva il file
Ovviamente fate una prova in ambiente di test e fatevi sempre una copia dei file prima della modifica!