示例#1
0
        public void AddSingleUntrackedEntityToContextResultsinAddedState()
        {
            var ninja = new Ninja();

            using (var context = new NinjaContextDefaultBehavior()) {
                context.Ninjas.Add(ninja);
                Assert.AreEqual(EntityState.Added, context.ChangeTracker.Entries().FirstOrDefault().State);
            }
        }
示例#2
0
        public void AddUntrackedGraphOfNewEntitiesResultsinAddedStateOnAll()
        {
            var ninja = new Ninja();

            ninja.EquipmentOwned.Add(new NinjaEquipment());
            using (var context = new NinjaContextDefaultBehavior()) {
                context.Ninjas.Add(ninja);
                var entries = context.ChangeTracker.Entries();
                entries.ToList().ForEach(e => Debug.WriteLine($"{e.Entity.ToString()}:{e.State}"));
                CollectionAssert.AreEqual(new[] { EntityState.Added, EntityState.Added }, entries.Select(e => e.State).ToArray());
            }
        }
示例#3
0
        public void EFDoesNotComprehendsMixedStatesWhenAddingUntrackedGraph()
        {
            var ninja = new Ninja();

            ninja.Clan = new Clan {
                Id = 1
            };
            using (var context = new NinjaContextDefaultBehavior()) {
                context.Ninjas.Add(ninja);
                var entries = context.ChangeTracker.Entries();
                entries.ToList().ForEach(e => Debug.WriteLine($"{e.Entity.ToString()}:{e.State}"));
                Assert.IsFalse(entries.Any(e => e.State != EntityState.Added));
            }
        }