Object cannot be cast from DBNull to other types

This is a common error that you get when trying to display a field with no value (null), from a table. If for example you have a field where you store the age of the employee, but you don’t know the age of all employees, and thus those fields are set to NULL. Trying to retrieve this in your C# application and convert it to a string or another data type will result in this “cannot cast from DBNull” error. To prevent this simply check if the value is DBNull:

if(myDataReader["EmployeeAge"] != System.DBNull.Value)
{
   label1.Text = Convert.ToString(myDataReader["EmployeeAge"]);
}

In this example we use a DataReader. If the value of EmployeeAge is not DBNull, we convert it to a string and display it in the label. However, if the value is NULL, we don’t do anything, leaving the label blank. Of course, if you wish you can display a string such as “No age information” using an else block.

Nathan Pakovskie is an esteemed senior developer and educator in the tech community, best known for his contributions to Geekpedia.com. With a passion for coding and a knack for simplifying complex tech concepts, Nathan has authored several popular tutorials on C# programming, ranging from basic operations to advanced coding techniques. His articles, often characterized by clarity and precision, serve as invaluable resources for both novice and experienced programmers. Beyond his technical expertise, Nathan is an advocate for continuous learning and enjoys exploring emerging technologies in AI and software development. When he’s not coding or writing, Nathan engages in mentoring upcoming developers, emphasizing the importance of both technical skills and creative problem-solving in the ever-evolving world of technology. Specialties: C# Programming, Technical Writing, Software Development, AI Technologies, Educational Outreach

Leave a Reply

Your email address will not be published. Required fields are marked *

Back To Top