Alterando o valor de uma Custom Property via código (Sharepoint 2010)

O Cenário

Recentemente precisei fazer manutenção em uma webpart que mostrava a famosa frase

Estamos a X dias sem acidente de trabalho, nosso record é de Y dias.

Tão simples que chega a dar preguiça de fazer certo? Nem tanto!

Essa webpart deveria ter duas propriedades customizadas (Custom Properties) uma onde seria informada a Data do Ultimo Acidente e a outra onde seria informado o record atual de dias sem acidente. Aqui esta a webpart

Webpart_acidentes_trabalho

 

O problema

Pense, a partir do dia em que o record fosse batido, o administrador do site deveria, todos os dias, alterar a webpart e incremetar o valor do record, então começei a pesquisar como se altera o valor de uma propriedade via código, descobri a a API do Sharepoint não fornece uma meio “oficial” de se fazer isso.

 

A solução

A solução? bem, ela não é nada elegante, olha só:

Não é elegante mas funciona muito bem.