Why would this simple code cause a stack overflow exception?
问题 The stack overflow exception was thrown in the setter method of this property: public string TimeZone { get { if (TimeZone == null) return ""; return TimeZone; } set { TimeZone = value; } } "An unhandled exception of type 'System.StackOverflowException' occurred" I do not see any straightforward recursion here. If there are problems with the code, what should I be using instead to correct it? 回答1: set { TimeZone = value; } The setter is recursive. You must use a field like: string _timeZone;