示例#1
0
        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);
        }
示例#2
0
 public SearchAndPopulateMigration(IPlayerService playerService, ITeamService teamService, IGlobalMediaService globalMediaService)
 {
     _playerService      = playerService;
     _teamService        = teamService;
     _globalMediaService = globalMediaService;
 }