Clique aqui para ler todos os artigos desta edição
Codificação eficiente com DataSets tipados
por John Papa
Este artigo discute |
Este artigo usa as seguintes tecnologias: |
· DataSet Tipado · Códigos eficientes em C# e ADO.NET |
C#, ADO.NET Download: DataPoints0409.exe (191KB) |
Chapéu ADO.NET |
|
Certa vez, alguém me disse que a maior característica de um bom desenvolvedor consiste no desejo de empregar seu tempo de maneira eficiente. Os desenvolvedores estão eternamente buscando maneiras de tornar os códigos mais fáceis e velozes, bem como de reduzir o número de erros. O uso de objetos DataSet com tipos fortes no ADO.NET pode ajudar a conseguir exatamente isso.
Neste artigo abordarei os prós e contras do desenvolvimento de um aplicativo baseado no Microsoft® .NET Framework utilizando objetos DataSet com tipos fortes. Iniciarei descrevendo o que é um DataSet com tipo e como expandir as classes DataSet, DataTable e DataRow. Neste artigo vou me referir a um aplicativo de exemplo que contém o código completo para executar inserções, atualizações e exclusões das tabelas Orders e Order Details do banco de dados SQL Server Northwind, usando DataSets com tipos fortes. O aplicativo multicamadas de exemplo (faça download do código) usa um DataSet com tipo em várias camadas, incluindo uma biblioteca de classe usada como camada lógica comercial, um Web Service, e um aplicativo para Web do ASP.NET. Explicarei algumas das dicas e truques que você poderá empregar ao usar DataSets de tipos fortes.
A vantagem de ter um tipo
Lembra-se de como era a vida sem o IntelliSense®? Tudo bem, não foi algo tão contundente como a introdução da Internet, mas para um desenvolvedor como eu, que estou sempre buscando maneiras mais velozes de codificar e maneiras mais fáceis de memorizar todas as propriedades, métodos e nomes de evento de um objeto, o IntelliSense foi ótimo. Uma área que não se beneficiou do IntelliSense é o ADO Recordset tradicional. Por exemplo, na programação tradicional em ADO 2.x era preciso usar algo parecido com o seguinte código em Visual Basic® 6.0 para fazer referência ao valor de uma coluna de um Recordset:
oRecordset.Fields("CompanyName").Value
É claro que, para reduzir o código você poderia eliminar o grupo de Fields e a propriedade Value, já que são as propriedades default dos respectivos objetos. Contudo, se você escrever incorretamente o nome de uma coluna, será notificado sobre o erro durante a compilação. Além disso, se você se esquecer completamente do nome da coluna, terá que voltar e consultar a stored procedure, a instrução SQL, o arquivo XML e outras fontes de dados.