 |
|
03.27.07
Removing Nulls From A DataTable By Mads Kristensen
The individual cells in a DataTable can have a null value in the form of System.DbNull.Value.
If the DataTable is created by querying a database through ADO.NET, you can write the SQL statement in a way eliminates nulls. It could look like this "SELECT isnull(name, 'n/a') AS name FROM products".
However, there can be scenarios where you don't have the chance to manipulate the DataTable before you use it.
Such a scenario have I recently been involved in and the problem was that the data retrieved from a database could contain nulls in any of the integer type columns.
If I then bind the DataTable to a GridView in ASP.NET, I had to do a lot of workarounds to calculate footers and other values based on those columns.
Instead of doing the workarounds in a lot of different places in the code, I decided it was a better idea to clean the DataTable for nulls before it is used.
That led to the CleanDataTable method below, that replaces null values with zeros for a few integer type columns.
The point is that you only have to clean it ones and avoid any workaround for handling null values.
Comments
About the Author: Mads Kristensen currently works as a Senior Developer at Traceworks located
in Copenhagen, Denmark. Mads graduated from Copenhagen Technical Academy with a multimedia degree in
2003, but has been a professional developer since 2000. His main focus is on ASP.NET but is responsible for Winforms, Windows- and
web services in his daily work as well. A true .NET developer with great passion for the simple solution.
http://www.madskristensen.dk/
|