public Connection(Location origin, Location destination) { if (origin == null || destination == null) { throw new ArgumentNullException("Start or End Node"); } NetworkArc = new Arc(origin.NetworkNode, destination.NetworkNode, CalculateDistance(origin, destination)); NetworkArc.AutoAttach(); OriginLocation = origin; DestinationLocation = destination; }