Example #1
0
        public void Construct_SetState_SingleObject()
        {
            using (var context = new LoanContext())
            {
                var thing = new Thing();
                thing.Log("Constructed", context);
                context.StateShouldBe(thing, Detached);

                context.Entry(thing).State = Unchanged;
                thing.Log("Attached", context);
                context.StateShouldBe(thing, Unchanged);
            }
        }
        public void Construct_Update_Save()
        {
            using (var context = new LoanContext())
            {
                var thing = new Thing();
                thing.Log("Constructed", context);
                context.StateShouldBe(thing, Detached);

                context.Update(thing);
                thing.Log("Updated", context);
                context.StateShouldBe(thing, Added);

                context.SaveChanges();
                thing.Log("SaveChanges", context);
                context.StateShouldBe(thing, Unchanged);
            }
        }
Example #3
0
        public void Construct_Attach_Save_SingleObject()
        {
            using (var context = new LoanContext())
            {
                var thing = new Thing();
                thing.Log("Constructed", context);
                context.StateShouldBe(thing, Detached);

                context.Attach(thing);
                thing.Log("Attached", context);
                context.StateShouldBe(thing, Added);

                context.SaveChanges();
                thing.Log("SaveChanges", context);
                context.StateShouldBe(thing, Unchanged);
            }
        }
Example #4
0
        protected Thing SaveNewThingAndDetach()
        {
            var thing = SaveNewThing();

            Thing xferThing = null;

            using (var context = new LoanContext())
            {
                var foundThing = context.Set <Thing>()
                                 .SingleOrDefault(o => o.Id == thing.Id);
                foundThing.ShouldNotBeNull();
                foundThing.Log("Find", context);
                context.StateShouldBe(foundThing, Unchanged);

                xferThing = JsonConvert.DeserializeObject <Thing>(JsonConvert.SerializeObject(foundThing));
                context.StateShouldBe(xferThing, Detached);
                xferThing.Log("After Deserialize", context);
            }

            return(xferThing);
        }