lunedì 11 giugno 2018

Fix dell'errore Error occurred in deployment step 'Retract Solution': XXXXXX cannot be deserialized because it does not have a public default constructor

L'errore in questione si ottiene facendo il deploy di una soluzione in cui non è specificato un costruttore pubblico vuoto. Finora mi si è verificato solo sui Timer Jobs. Purtroppo il fix non è semplice. Vanno seguiti i seguenti passi:
  1. Sistemare il codice aggiungendo il costruttore mancante
  2. Fare il deploy in GAC dell'assembly così ottenuto, utilizzando gacutil
  3. IISRESET
  4. Eseguire il Retract della solution da Central Administration o con powershell
E qui una dettagliata guida su come scrivere un timer Job (è per SP 2010, ma va sempre bene :-))