public static async Task <List <Building> > LoadBuildingsAsync() { bool connect = await WebData.CheckConnection(); if (connect == false) { return(null); } DbService.RemoveUncurrentBuildings(); BuildingData.Buildings = new List <Building>(); List <Building> buildings = await new BuildingService().GetBuildings(); DbService.AddBuilding(buildings.Where(b => b.BuildingId != BuildingData.CurrentBuilding?.BuildingId).ToList()); var currentloadedbuilding = buildings.Where(b => b.BuildingId == BuildingData.CurrentBuilding?.BuildingId).FirstOrDefault(); if (currentloadedbuilding != null) { BuildingData.CurrentBuilding.Name = currentloadedbuilding.Name; BuildingData.CurrentBuilding.Site = currentloadedbuilding.Site; BuildingData.CurrentBuilding.Addrees = currentloadedbuilding.Addrees; BuildingData.CurrentBuilding.TimeTable = currentloadedbuilding.TimeTable; BuildingData.CurrentBuilding.Description = currentloadedbuilding.Description; DbService.SaveDb(); } BuildingData.Buildings = DbService.LoadAllBuildings(); BuildingData.CurrentBuilding = BuildingData.Buildings .Where(b => b.BuildingId == currentloadedbuilding?.BuildingId) .FirstOrDefault(); return(BuildingData.Buildings); }