Ivajkin
4/21/2017 - 8:50 AM

BaseControllerPartial.cs

protected ClientAddress[] LoadClientAddresses()
{
	// SessionData.System может быть не заданым?
	if (SessionData.System.Client == null) return new ClientAddress[0];

	List<ClientAddress> clientAddressList = new List<ClientAddress>();
      
	// _readOnlyDeliveryService, SessionData.System.Client или SessionData.System.Locality
	ClientAddress[] clientAddresses = _readOnlyDeliveryService.GetClientAddressesByDeliveryLocality(SessionData.System.Client.PhoneNumber, SessionData.System.Locality.Id);

	foreach (ClientAddress address in clientAddresses)
	{
		DeliveryUnit[] deliveryUnits = _readOnlyDeliveryService.GetDeliveryUnitsByStreetOrCache(address.StreetId);

		// Pizzerias - мне кажется здесь высокая вероятность! Это property
		// Вот так выглядит property: protected Pizzeria[] Pizzerias 		{ 			get 			{ 				if (SessionData.System.Locality == null) return new Pizzeria[0]; 				return _departmentsStructureService.GetPizzeriasByLocalityOrCache(SessionData.System.Locality.Id);			}		}
		if (_readOnlyDeliveryService.IsValidAddress(address, deliveryUnits, Pizzerias))
		{
			clientAddressList.Add(address);
		}
	}
	
	return clientAddressList.ToArray();
}
// Итого, кандидаты:
//    SessionData.System
//    _readOnlyDeliveryService
//    SessionData.System.Client
//    SessionData.System.Locality
//    Pizzerias