/// <summary> /// Determines whether this instance and a specified object have the same value. /// </summary> /// <param name="obj">The StringAccessor to compare to this instance.</param> /// <returns>true if obj is a StringAccessor and its value is the same as this instance; otherwise, false.</returns> public override bool Equals(object obj) { if (obj == null) { return(false); } StringAccessor b = obj as StringAccessor; if ((object)b == null) { string s = obj as string; if ((object)s == null) { return(false); } return(this.ToString() == s); } return(this.ToString() == b.ToString()); }