Example #1
0
        public static async Task SyncMapsFromHoLLyAsync(IEnumerable <BeatmapEntry> entry, bool addOnly)
        {
            using (var context = new BeatmapDbContext())
            {
                if (addOnly)
                {
                    var dbMaps  = context.Beatmaps.Where(k => !k.InOwnFolder);
                    var newList = entry.Select(Beatmap.ParseFromHolly);
                    var except  = newList.Except(dbMaps, new Beatmap.Comparer(true));

                    context.Beatmaps.AddRange(except);
                    await context.SaveChangesAsync();
                }
                else
                {
                    var dbMaps = context.Beatmaps.Where(k => !k.InOwnFolder);
                    context.Beatmaps.RemoveRange(dbMaps);

                    var osuMaps = entry.Select(Beatmap.ParseFromHolly);
                    context.Beatmaps.AddRange(osuMaps);

                    await context.SaveChangesAsync();
                }
            }
        }
Example #2
0
 public static async Task RemoveLocalAllAsync()
 {
     using (var context = new BeatmapDbContext())
     {
         var locals = context.Beatmaps.Where(k => k.InOwnFolder);
         context.Beatmaps.RemoveRange(locals);
         await context.SaveChangesAsync();
     }
 }
Example #3
0
 public async Task AddNewMapAsync(Beatmap beatmap)
 {
     _beatmapDbContext.Beatmaps.Add(beatmap);
     await _beatmapDbContext.SaveChangesAsync();
 }