TryCast Operator

Na nova versão da linguagem Visual Basic .NET foi introduzida o “novo” operador chamado TryCast, que até o momento, era somente visto em códigos do .NET Framework que eram decompilados pelo Reflector e não podia ser utilizado em aplicações que nós mesmo desenvolvemos.

Ela é usada como utilizamos atualmente os operadores CType ou o DirectCast, ou seja, passamos o objeto que queremos converter e o tipo para qual este deve ser convertido. Mas a diferença é que o TryCast somente trabalha com References Types, como Classes e Interfaces. E também vale lembrar que ele requer herança ou implementação entre os dois tipos.

Ao contrário do CType e DirectCast, que atiram uma InvalidCastException quando não é possível a conversão, o TryCast retorna Nothing. Abaixo, um exemplo do uso deste novo operador:

          Public Sub Teste(ByVal obj As Object)
               Dim colecao As IList = TryCast(obj, IList)
               If Not (colecao Is Nothing) Then
                    Console.WriteLine(“Coleção válida.”)
               End If
          End Sub

Isso já é suportado no C#, onde lá é conhecido como operador “as“.

DB Pooling

Com a versão 2.0 do .NET Framework, novos métodos foram criados para o gerencimento do pool de conexões para Databases, que até então, não tínhamos acesso. De toda a forma, a pooling ainda é gerido pelo .NET, mas temos agora métodos para poder limpar este pool de conexões.

Esta funcionalidade está disponível para os Providers SqlClient e OracleClient, em dois métodos estáticos:

               * ClearPool(Connection) – Limpa o pool e fecha as conexões ativas para uma conexão específica.
                              [ SqlClient ] [ OracleClient ]

               * ClearAllPools – Limpa o pool e fecha todas as conexões ativas.
                              [ SqlClient ] [ OracleClient ]