예제 #1
0
        public IEnumerable <DAL.Feed> GetAllFeeds()
        {
            using var context = new ORM.Entities();
            List <DAL.Feed> l = new List <DAL.Feed>(context.Feeds.Count());

            foreach (ORM.Feed item in context.Feeds)
            {
                DAL.Feed f = new DAL.Feed()
                {
                    Id   = item.Id,
                    Name = item.Name,
                    Url  = item.Url,
                    Xml  = item.Xml
                };
                f.SetItems();
                l.Add(f);
            }
            return(l);
        }
예제 #2
0
        public void UpdateFeed(DAL.Feed feed)
        {
            //var f = new ORM.Feed() { Id = feed.Id, Name = feed.Name, Url = feed.Url };
            //using (var context = new ORM.Entities())
            //{
            //    context.Feeds.Attach(f);
            //    context.Entry(f).Property("Name").IsModified = true;
            //    context.Entry(f).Property("Url").IsModified = true;
            //    context.SaveChanges();
            //}

            using (var context = new ORM.Entities())
            {
                ORM.Feed dbFeed = context.Feeds.FirstOrDefault(f => f.Id == feed.Id);
                if (dbFeed == null)
                {
                    throw new Exception($"Feed {feed.Id} not found in repository.");
                }
                dbFeed.Name = feed.Name;
                dbFeed.Url  = feed.Url;
                dbFeed.Xml  = feed.Xml;
                context.SaveChanges();
            }
        }