public IndividualEntity Retrieve(int id)
        {
            var sqlHelper = new DalHelper(_connectionString);

            var parameters =
                new List<SqlParameter>
                    {
                        new SqlParameter("Id", id)
                    };

            var procedureName = string.Format(
                DalHelper.RetrieveStoredProcFormat,
                TableName);

            var dataSet = sqlHelper.ExecuteStoredProcedure(
                procedureName,
                parameters);

            IndividualEntity entity = null;
            if (dataSet != null &&
                dataSet.Tables.Count > 0)
            {
                var table = dataSet.Tables[0];
                foreach (DataRow row in table.Rows)
                {
                    entity =
                        new IndividualEntity
                        {
                            Id = row.Field<int>("Id"),
                            LastName = row.Field<string>("LastName"),
                            FirstName = row.Field<string>("FirstName"),
                            MiddleName = row.Field<string>("MiddleName"),
                            Suffix = row.Field<string>("Suffix"),
                            DateOfBirth = row.Field<DateTime>("DateOfBirth"),
                        };
                }
            }

            return entity;
        }
        public void Create_WithScenarioDataInDatabase_ExpectProperNextIdIsGenerated(
            int expectedId)
        {
            // Arrange
            var classUnderTest = new IndividualDal(ConnectionString);

            var entity = 
                new IndividualEntity
                             {
                                 LastName = "Jones",
                                 FirstName = "Wilma",
                                 MiddleName = "Vanessa",
                                 DateOfBirth = new DateTime(1993, 11, 17),
                             };

            // Act
            var actual = classUnderTest.Create(entity);

            // Assert
            Assert.NotNull(actual);
            Assert.AreEqual(expectedId, actual);
        }
        public void Delete_WithScenarioDataInDatabase_ExpectInvalidOperationException(
            int id)
        {
            // Arrange
            var classUnderTest = new IndividualDal(ConnectionString);

            var entity =
                new IndividualEntity
                {
                    Id = id,
                };

            // Act
            classUnderTest.Delete(entity);

            // Assert
            Assert.Fail("Expected an exception");
        }