Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

C# Object reference not set to an instance of an object

I have the following code:

public void SetUser(User user)
{
   string streetNumber = "";

   if (user.Address.StreetNo != null)
      streetNumber = user.Address.StreetNo.ToString();
   else
     streetNumber = "";
}

I get the ever popular

Object reference not set to an instance of an object.

issue.

like image 489
Anicho Avatar asked Jan 17 '26 22:01

Anicho


1 Answers

public void SetUser(User user)
{
   string streetNumber = "";

   if (user != null && user.Address != null && user.Address.StreetNo != null) {
      streetNumber = user.Address.StreetNo.ToString();
   }
}

Taking into account @CKoenig's suggestion, the following throws an exception if the user or user.Address are null:

public void SetUser(User user)
{

   if (user == null) {
       throw new System.ArgumentNullException("user", "user cannot be null");
   }

   if (user.Address == null) {
       throw new System.ArgumentNullException("Address", "Address cannot be null");
   }
   
   string streetNumber = "";

   if (user.Address.StreetNo != null) {
      streetNumber = user.Address.StreetNo.ToString();
   }
}
like image 114
Curtis Avatar answered Jan 19 '26 16:01

Curtis



Donate For Us

If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!