public void AddSpamMessage(string msg) { Debug.Assert(!string.IsNullOrEmpty(msg)); using (MainDbContext ctx = new MainDbContext()) { SpamMessageModel spamMsg = ctx.SpamMessages.Where(m => m.text.Contains(msg)).FirstOrDefault(); if (spamMsg is null) { spamMsg = new SpamMessageModel(msg); } spamMsg.lastReceived = DateTime.Now; ++spamMsg.count; ctx.Add(spamMsg); } }
//--------------------------------------------------------Set-, Get- Methods:---------------------------------------------------------\\ #region --Set-, Get- Methods-- public bool IsSpam(string msg) { using (MainDbContext ctx = new MainDbContext()) { SpamMessageModel spamMsg = ctx.SpamMessages.Where(m => string.Equals(m.text, msg)).FirstOrDefault(); if (spamMsg is null) { SPAM_SEMA.Wait(); if (spamRegex is null || msg is null || !spamRegex.IsMatch(msg)) { SPAM_SEMA.Release(); return(false); } SPAM_SEMA.Release(); return(true); } } return(false); }