Tests.DapperReadmeVsChain.Example1_Chain C# (CSharp) Method

Example1_Chain() private method

private Example1_Chain ( ) : void
return void
        public void Example1_Chain()
        {
            var guid = Guid.NewGuid();
            var dog = s_DataSource.Sql("select Age = @Age, Id = @Id", new { Age = (int?)null, Id = guid }).ToCollection<Dog>().Execute(); ;

            Assert.AreEqual(1, dog.Count());
            Assert.IsNull(dog.First().Age);
            Assert.AreEqual(guid, dog.First().Id);


            //Or if you just want one:
            var aDog = s_DataSource.Sql("select Age = @Age, Id = @Id", new { Age = (int?)null, Id = guid }).ToObject<Dog>().Execute(); ;
            Assert.IsNull(aDog.Age);
            Assert.AreEqual(guid, aDog.Id);

            //Make it more realistic by actually inserting a record
            var originalDog = new Dog() { Age = 2, Name = "Fido", Weight = 2.5f };

            var key = s_DataSource.Insert("Dog", originalDog).ToGuid().Execute();

            //And then re-read it back
            var fetchedDog = s_DataSource.GetByKey("Dog", key).ToObject<Dog>().Execute();

            Assert.AreEqual(originalDog.Age, fetchedDog.Age);
            Assert.AreEqual(originalDog.Name, fetchedDog.Name);
            Assert.AreEqual(originalDog.Weight, fetchedDog.Weight);
        }