Когда вы сохраняете местоположение в первый раз и пытаетесь получить все местоположения, оно будет правильно загружено в контексте, потому что вы добавляете его в тот же контекст, объекты, связанные со вторым разом, будут нулевыми, потому что это новый контекст
Это происходит потому, что Ленивая загрузка не включена
this.Configuration.LazyLoadingEnabled = false;
Чтобы получить связанные элементы, вы должны включить их Отметьте это
1-Добавьте GetAllWithInclude к вашей базе Repository
public IEnumerable<TEntity> GetAllWithInclude(List<string> includes)
{
IQueryable<TEntity> entities = Context.Set<TEntity>();
foreach (var include in includes)
{
entities = entities.Include(include);
}
return entities.ToList();
}
2 - добавить GetAllWithInclude в интерфейс ILocationRepository
IEnumerable<AffectedLocation> GetAllWithInclude(List<string> includes);
3 - чтобы получить данные, которые необходимо добавить в список включаемых подсубъектов
List<string> includes = new List<string>
{
"RadiationLevel",
"GeographicalCoordinates"
};
List<AffectedLocation> affectedLocations = uow.Location.GetAllWithInclude(includes).ToList();