コード例 #1
0
        public IEnumerable <string> Run()
        {
            _context = new FamilyMembersWithFluentConfiguration();

            var kids = _context.Kids;

            foreach (var kid in kids)
            {
                if (kid.Birthday.HasValue)
                {
                    kid.Birthday = kid.Birthday.Value.AddDays(20);
                }
            }

            //so by adding 20 days whose birth day changed?
            foreach (var k in _context.Kids)
            {
                var birthDayProperty = _context.Entry(k).Property(x => x.Birthday);
                if (birthDayProperty.IsModified)
                {
                    if (birthDayProperty.OriginalValue.Value.Month != birthDayProperty.CurrentValue.Value.Month)
                    {
                        Log("Birthday month changed for {0} from {1} to {2}", k.Name, birthDayProperty.OriginalValue,
                            birthDayProperty.CurrentValue);
                    }
                }
            }

            return(_messages);
        }
コード例 #2
0
        public IEnumerable <string> Run()
        {
            _context = new FamilyMembersWithFluentConfiguration();

            var kidsWhosNamesBeginWithC = from d in _context.Dads
                                          from k in d.Kids
                                          where k.Name.StartsWith("C")
                                          select k.Name;

            Log("There are {0} kids whose names begin with 'C' ({1})", kidsWhosNamesBeginWithC.Count(), String.Join(",", kidsWhosNamesBeginWithC));

            var kidsWhoAreAlsoDads = from d in _context.Dads
                                     join k in _context.Kids on d.FirstName equals k.Name
                                     select d.FirstName;

            Log("There are {0} kids who are dads ({1})", kidsWhoAreAlsoDads.Count(), String.Join(",", kidsWhoAreAlsoDads));



            Log("Inefficient count of kids per dad");
            foreach (var dad in _context.Dads)
            {
                Log("{0} has {1} kids", dad.FirstName, dad.Kids.Count);
            }

            Log("Efficient count of kids per dad");
            foreach (var dad in _context.Dads.Include(x => x.Kids))
            {
                Log("{0} has {1} kids", dad.FirstName, dad.Kids.Count);
            }
            _context.SaveChanges();
            return(Enumerable.Empty <string>());
        }
コード例 #3
0
        public IEnumerable <string> Run()
        {
            Database.SetInitializer(new FullOrtmanFamilyInitializer());
            var context = new FamilyMembersWithFluentConfiguration();

            context.Database.Initialize(true);
            return(Enumerable.Empty <string>());
        }
コード例 #4
0
        public IEnumerable <string> Run()
        {
            var context = new FamilyMembersWithFluentConfiguration();
            //the old way you used to do it
            var chris_first = (from d in context.Dads
                               where d.ID == 1
                               select d).First();

            var secondContext = new FamilyMembersWithFluentConfiguration();
            var chris_by_id   = secondContext.Dads.Find(1);

            return(Enumerable.Empty <string>());
        }
コード例 #5
0
        public IEnumerable <string> Run()
        {
            Database.SetInitializer(new OrtmanFamilyInitializer());
            var context = new FamilyMembersWithFluentConfiguration();

            var charles = new Dad()
            {
                FirstName = "Charles",
                Address   = new Address()
            };

            context.Dads.Add(charles);

            context.Messages.Add(new Message("Inserted dad [charles] without setting a birthday"));

            context.SaveChanges();

            return(Enumerable.Empty <string>());
        }
コード例 #6
0
        public IEnumerable <string> Run()
        {
            Database.SetInitializer(new OrtmanFamilyInitializer());
            var context = new FamilyMembersWithFluentConfiguration();

            //since i know i've only just created 1 dad, i just hardcode the ID
            var chris = context.Dads.First(x => x.FirstName == "Chris");

            var clara = new Kid()
            {
                Name = "Clara", Birthday = DateTime.Parse("1/21/2009")
            };

            chris.Kids.Add(clara);

            var message = new Message("Data inserted via conventions demo");

            context.Messages.Add(message);

            context.SaveChanges();

            return(Enumerable.Empty <string>());
        }