Usando nhibernate com o novo driver gerenciado da Oracle
Ok, você descobriu que pode utilizar o novo driver gerenciado do Oracle em suas aplicações, mas e se você usa o nHibernate? Isto será suportado na próxima grande versão do nHibernate, mas se você não quer esperar até sabe quem quando, segue os passos para estender o ORM e usar hoje mesmo o Oracle Managed […]
Oracle sem Oracle Client com o novo ODP.NET com driver gerenciado
Se você tem uma aplicação .NET que utiliza Oracle como banco de dados com certeza já sofreu com incompatibilidade de versões de dll, instalações diferentes com x32 e x64, oracle clients não compatíveis, etc. Isso já causou tantas horas de manutenção para gente que se nossos clientes permitissem, já teríamos mudado para SqlServer faz tempo. […]
Melhorando Debug com Debugger Display Attributes
Sempre que estamos debugando uma aplicação e queremos olhar o conteúdo de alguma variável simplesmente passamos o mouse em cima da mesma (ou olhamos no “locals”). No caso de objetos, temos uma certa frustração ao ver o Visual Studio nos mostrar o nome da classe com seu namespace e temos que clicar naquele “+” para […]
Caça-Palavras no Windows 8
Estou meio sumido daqui, mas é por um bom motivo: acabei de lançar uma versão do Caça-Palavras para o Windows 8. Deu um bom trabalho, mas valeu muito a pena. Agora qualquer jogador em um Windows 8 (tablet ou desktop) vai poder se juntar aos 60 mil que já jogam no Windows Phone. No início […]
Testando JsonResults que retornam tipos anônimos no Asp.Net MVC
Durante muito tempo eu usei reflection ou mesmo helpers que executam o contexto para testar JsonResults que retornam tipos anônimos. Esses dias achei um truque bem legal que vou compartilhar aqui. Suponha a action abaixo:
1 2 3 4 5 6 |
public JsonResult GetSubstacoes(int skip, int take) { return Json(new { total = _rep.Query.Count(), subestacoes = _rep.Query.OrderBy(x => x.Nome).Skip(skip).Take(take) }); } |
ps: eu sei que eu poderia criar uma classe tipada e usar como retorno, mas estou fazendo proposital para […]
Thread.Sleep no WinRT / Windows8
Fui tentar usar o Thread.Sleep() no Windows 8 e descobri que ele não se encontra mais lá. Depois de muito pesquisar, achei 2 formas de substituir a chamada. Dentro de método async:
1 |
await Task.Delay(2000); |
Ou crie um helper para usar em qualquer lugar:
1 2 3 |
public static void Sleep(int ms) { new System.Threading.ManualResetEvent(false).WaitOne(ms); } |
Controlando a versão de seu banco de dados com Sharp Migrations
Sharp migrations é um framework para te ajudar a controlar as mudanças no banco de dados com o passar do tempo. A ideia vem das excelentes migrações do Ruby on Rails e é provavelmente a melhor maneira de alterar sua base de dados de forma estruturada e organizada. Como funciona?
Acessando as palestras do Teched 2011 via webservices
Para colocar as palestras do Teched 2011 em minha aplicação para o windows phone 7, eu acabei tendo que extrair todas as palestras do site oficial do Teched. Como deu um pouco de trabalho, resolvi disponibilizar no meu VPS alguns webservices para que qualquer pessoa possa brincar também com os dados.