public static void Main()
var data = new AddressData
AddressSpaceID = "ABCD1234",
AddressSegments = "AddressSegment",
Console.WriteLine("Normal AddressData ToString: " + data.ToString());
Console.WriteLine("Normal Object ToString: " + obj.ToString());
var data2 = new AddressData2
AddressSpaceID = "ABCD1234",
AddressSegments = "AddressSegment",
Console.WriteLine("Override AddressData ToString: " + data2.ToString());
Console.WriteLine("Override Object ToString: " + obj.ToString());
var data3 = new AddressData3
AddressSpaceID = "ABCD1234",
AddressSegments = "AddressSegment",
Console.WriteLine("New AddressData ToString: " + data3.ToString());
Console.WriteLine("New Object ToString: " + obj.ToString());
public string AddressSpaceID { get; set; }
public string AddressSegments { get; set; }
public class AddressData2
public string AddressSpaceID { get; set; }
public string AddressSegments { get; set; }
public override string ToString()
return $"{AddressSpaceID}-{AddressSegments}";
public class AddressData3
public string AddressSpaceID { get; set; }
public string AddressSegments { get; set; }
public new string ToString()
return $"{AddressSpaceID}-{AddressSegments}";