public override async Task <bool> Run() { var serviceProvider = ServiceConfiguration.ConsoleProvider; _globalMediaService = serviceProvider.GetService <IGlobalMediaService>(); _blobStorageService = serviceProvider.GetService <IBlobStorageService>(); var referencedBlobs = await _globalMediaService.GetReferencedBlobIds(); var referencedBlobIds = referencedBlobs.Select(x => x.BlobStorageReference).ToList(); var referencedGlobalMediaIds = referencedBlobs.Select(x => x.GlobalMediaId).ToList(); //Remove non referenced files from blob storage await _blobStorageService.DeleteBlobsExceptSelected(referencedBlobIds, "mycontainer"); //Remove non referenced items froom the globalmedia table await _globalMediaService.DeleteUnreferencedBlobs(referencedGlobalMediaIds); return(true); }
public SearchAndPopulateMigration(IPlayerService playerService, ITeamService teamService, IGlobalMediaService globalMediaService) { _playerService = playerService; _teamService = teamService; _globalMediaService = globalMediaService; }