public static void HandleUnsubscribe(Message message, TextWriter log) { var hashes = message.GetPredecessors("Subscription") .Select(p => Convert.ToBase64String(p.Code)) .ToList(); using (var context = new CommuterDbContext()) { var predecessors = context.Subscriptions .Where(s => hashes.Contains(s.Hash)) .ToList(); context.Subscriptions.RemoveRange(predecessors); log.WriteLine($"Removing {predecessors.Count} podcast subscriptions"); context.SaveChanges(); } }
public static Aggregate FromMessage(Message message) { var hashes = message.GetPredecessors("SearchResult"); return new Aggregate(hashes.ToImmutableHashSet()); }