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:

  1. Accedi al folder C:\Program Files\Common Files\Microsoft Shared\Web Server Extensions\14\TEMPLATE\CONTROLTEMPLATES
  2. Apri con Notepad il file TaxonomyPicker.ascx
  3. Individua la seguente riga:
    <%@ Control className="TaxonomyPickerControl" Language="C#" Inherits="Microsoft.SharePoint.Portal.WebControls.TaxonomyPicker&#44;Microsoft.SharePoint.Portal, Version=14.0.0.0, Culture=neutral, PublicKeyToken=71e9bce111e9429c" %>
  4. Sostituisci ‘&#44′ 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" %>
  5. Salva il file

Ovviamente fate una prova in ambiente di test e fatevi sempre una copia dei file prima della modifica!