Working with null values
You have seen how reference types are different from value types in how they are stored in memory, and how to store primitive values like numbers in struct
variables. But what if a variable does not yet have a value? How can we indicate that? C# has the concept of a null
value, which can be used to indicate that a variable has not been set.
Making a value type nullable
By default, value types like int
and DateTime
must always have a value, hence their name. Sometimes, for example, when reading values stored in a database that allows empty, missing, or null
values, it is convenient to allow a value type to be null
. We call this a nullable value type.
You can enable this by adding a question mark as a suffix to the type when declaring a variable.
Let’s see an example:
- Use your preferred coding tool to add a new Console App/
console
project namedNullHandling
to theChapter06
workspace/solution.- In Visual Studio Code...