Minhas classes de uso geral. Open Source

01/17/2011 09:23:00 By Felipe Pessoto

Publiquei há algum tempo uma biblioteca com algumas classes que uso constantemente e ajudam bastante. Não é preciso usar a minha DLL em si, você pode pegar só as classes que precisa e incluir no seu projeto também. Acho que ninguem quer um Fujiy.Util.dll no projeto, rs.

Em resumo, por enquanto tenho o seguinte:

-CacheHelper. Com ele você pode agrupar os itens do cache, apagar o cache por grupo, buscar chaves por grupo, apagar todo o cache,  e o mais interessantes, chamar o cache desta forma: Cache.FromCacheOrExecute(() => myObj.MyMethod(paramInt1, param2String), new CacheOptions { GroupName = CacheGroupNames.RedesSociais }), a chave é gerada a partir da assinatura do método e dos parametros passados tudo automático.

-PagedCollection. Este já me salvou várias vezes. Normalmente quando fazemos paginação no banco não é possível usar ListView com DataPager pra gerar a paginação automáticamente, pois ele usa a coleção em memória pra saber quantos itens há na coleção. Com ele eu posso criar uma coleção falsa enganando o DataPager: new PagedCollection<Mensagem>(TotalMensagens, DtpMensagens.StartRowIndex, mensagens);

-Extensões Except e Union que aceitam Lambda Expression para fazer a comparação de igualdade. Assim você pode fazer um Union que olha pro Usuario.Id por exemplo. Seguindo a mesma lógica da pra criar facialmente pro Distinct, quem sabe crio essa extensão no futuro também.

-Pra terminar uma extensão pra Enums, o método ToDescription olha se o Enum tem o atributo DescriptionAttribute, se tiver mostra a mensagem nele, senão o ToString padrão. Ótimo pra popular DropDownList por exemplo

 

Fujiy source code


Comments (0)