private static void StoreRatings(RsdnDbContext db, JanusRatingInfo[] ratings) { if (ratings == null || ratings.Length == 0) { return; } var clearRatings = from rating in ratings where rating.rate == (int)VoteValue.None select rating; foreach (var clearCmd in clearRatings) { db.Ratings .Where(r => r.PostId == clearCmd.messageId && r.UserId == clearCmd.userId) .Delete(); } var upvotes = from rating in ratings where rating.rate > 0 select rating; db.Ratings.AddOrUpdateRange(mapper.Map <IEnumerable <DbRating> >(upvotes)); var likes = from rating in ratings where rating.rate <= 0 && rating.rate != (int)VoteValue.None select rating; db.Ratings.AddOrUpdateRange(mapper.Map <IEnumerable <DbRating> >(likes)); }
public IEnumerable <DbForum> GetForums(IEnumerable <int> forumIds) { using (var connection = new RsdnDbContext()) { var forums = from forum in connection.Forums where forumIds.Contains(forum.Id) select forum; return(forums.ToArray()); } }
static RsdnDbContext() { #if DEBUG && TRACE loggerFactory = new LoggerFactory(); loggerFactory.AddDebug(); #endif using (var ctx = new RsdnDbContext()) { //todo: use migrations ctx.Database.EnsureCreated(); } }