I would like to prevent further processing on an object if it is null.

In the following code I check if the object is null by either:

```
if (!data.Equals(null))

```

and

```
if (data != null)

```

However, I receive a `NullReferenceException` at `dataList.Add(data)`. If the object was null, it should never have even entered the `if`-statement!

Thus, I'm asking if this is proper way of checking if an object is null:

```
public List<Object> dataList;
public  bool AddData(ref Object data)
    bool success = false;
    try
    {
        // I've also used "if (data != null)" which hasn't worked either
        if (!data.Equals(null))
        {
           //NullReferenceException occurs here ...
           dataList.Add(data);
           success = doOtherStuff(data);
        }
    }
    catch (Exception e)
    {
        throw new Exception(e.ToString());
    }
    return success;
}

```

If this is the proper way of checking if the object is null, what am I doing wrong (how can I prevent further processing on the object to avoid the NullReferenceException)?