Tax = dr["TAX"] == DBNull.Value ? 0 : (int)dr["TAX"]
That will check if it's null
, if it is, it sets the int
value to 0
, otherwise it assigns the integer value.
Applying that to your code:
result.Add(new CompanyDetails() {
Name = dr["name"].ToString(),
City = dr["city"].ToString(),
StreetName = dr["streetName"].ToString(),
StreetNr = dr["apartmentNr"] == DBNull.Value ? 0 : (int)dr["apartmentNr"]
Tax = dr["TAX"] == DBNull.Value ? 0 : (int)dr["TAX"]
)});
EDIT:
In case StreetNr
and Tax
are already of type int?
, then just assign null
instead of 0
.
result.Add(new CompanyDetails() {
Name = dr["name"].ToString(),
City = dr["city"].ToString(),
StreetName = dr["streetName"].ToString(),
StreetNr = dr["apartmentNr"] == DBNull.Value ? (int?)null : (int)dr["apartmentNr"]
Tax = dr["TAX"] == DBNull.Value ? (int?)null : (int)dr["TAX"]
)});