You are setting your copy of the reference to null, which doesn't affect the original value.
It is analogous to (in C++)
Person * myPtr = new Person();
NullFunc(myPtr);
public NullFunc(Person * ptr)
{
ptr = null;
}
The reference is effectively passed by value, you can't change it. You can change properties on the object that it points to however:
ptr->Name = "Bob";
Clearly affects the original object.