Clique aqui para ler todos os artigos desta edição
Novidades do ADO.NET 2.0
Serialização Binária, SqlConnectionStringBuilder, melhorias no DataView e Batch Updates
John Papa
Este artigo discute |
Este artigo usa as seguintes tecnologias |
·Serialização de DataSets e DataTables em formato binário como alternativa a XML; ·Como construir strings de conexão dinamicamente; ·Melhorias no DataView; ·Atualizações em Lote no DataAdapter (Batch Updates). |
·ADO.NET 2.0, Visual Studio 2005.
|
Chapéu: ADO.NET |
|
Várias melhorias significativas foram introduzidas no ADO.NET 2.0, incluindo otimização de desempenho, flexibilidade e adição de novos recursos. No meu artigo da edição 24 (“DataSet e DataTable em ADO.NET
Serialização binária
O ADO.NET 1.x provê formas para serializar um DataSet. A má notícia é que o formato XML usado para DataSets pode causar problemas de desempenho quando um grande DataSet for serializado e transmitido via rede. O ADO.NET 2.0 pode serializar um DataSet ou um DataTable em formato binário puro, resultando em menor consumo de memória e largura da banda de rede.
Vejamos como implementar serialização binária em um DataTable. A propriedade RemotingFormat do DataTable foi introduzida no ADO.NET 2.0 que pode ser usada para fixar o formato da serialização. A propriedade RemotingFormat espera por um dos dois valores de enumeração do SerializationFormat: SerializationFormat.Xml ou SerializationFormat.Binary. Uma vez definido o RemotingFormat, podemos criar uma instância da classe BinaryFormatter para serializar o DataTable. O exemplo da Listagem 1 carrega uma lista de clientes em um DataTable e o serializa no formato binário.
Listagem 1. Serialização binária de um DataTable
string cnStr = @"server=.;database=northwind;integrated security=true;";
using (SqlConnection cn = new SqlConnection(cnStr))
{
string sql = "SELECT o.OrderID, o.CustomerID, o.OrderDate, " +
"od.ProductID, p.ProductName, od.UnitPrice, " +
"od.Quantity FROM Orders o " +
" [...] continue lendo...