コード例 #1
0
        public async Task Entity_CustomerInfo_Delete()
        {
            var testEntity   = new CustomerInfo();
            var resultEntity = new CustomerInfo();
            var lastKey      = Defaults.Guid;
            var originalId   = Defaults.Integer;
            var originalKey  = Defaults.Guid;
            var reader       = new EntityReader <CustomerInfo>();

            await Entity_CustomerInfo_Create();

            lastKey = CustomerEntityTests.RecycleBin.Last();

            testEntity  = reader.Read(x => x.Key == lastKey).FirstOrDefaultSafe();
            originalId  = testEntity.Id;
            originalKey = testEntity.Key;
            Assert.IsTrue(testEntity.Id != Defaults.Integer);
            Assert.IsTrue(testEntity.Key != Defaults.Guid);
            Assert.IsTrue(testEntity.CreatedDate.Date == DateTime.UtcNow.Date);

            using (var writer = new StoredProcedureWriter <CustomerInfo>(testEntity, new CustomerSPConfig(testEntity)))
            {
                resultEntity = await writer.DeleteAsync();
            }
            Assert.IsTrue(resultEntity.IsNew);

            testEntity = reader.Read(x => x.Id == originalId).FirstOrDefaultSafe();
            Assert.IsTrue(testEntity.Id != originalId);
            Assert.IsTrue(testEntity.Key != originalKey);
            Assert.IsTrue(testEntity.IsNew);
            Assert.IsTrue(testEntity.Key == Defaults.Guid);
        }
コード例 #2
0
        public async Task Data_DatabaseWriter_Delete()
        {
            var testEntity = new CustomerInfo();
            var oldId      = Defaults.Integer;
            var oldKey     = Defaults.Guid;

            // Insert and baseline test
            await Data_DatabaseWriter_Insert();

            testEntity = new EntityReader <CustomerInfo>().GetAll().OrderByDescending(x => x.CreatedDate).FirstOrDefaultSafe();
            oldId      = testEntity.Id;
            oldKey     = testEntity.Key;
            Assert.IsTrue(testEntity.IsNew == false);
            Assert.IsTrue(testEntity.Id != Defaults.Integer);
            Assert.IsTrue(testEntity.Key != Defaults.Guid);

            // Do delete
            using (var writer = new StoredProcedureWriter <CustomerInfo>(testEntity, new CustomerSPConfig(testEntity)))
            {
                testEntity = await writer.DeleteAsync();
            }

            // Pull from DB and retest
            testEntity = new EntityReader <CustomerInfo>().GetById(oldId);
            Assert.IsTrue(testEntity.IsNew);
            Assert.IsTrue(testEntity.Id != oldId);
            Assert.IsTrue(testEntity.Key != oldKey);
            Assert.IsTrue(testEntity.IsNew);
            Assert.IsTrue(testEntity.Key == Defaults.Guid);

            // Add to recycle bin for cleanup
            DatabaseWriterTests.RecycleBin.Add(testEntity.Key);
        }
コード例 #3
0
        public async Task Entity_StoredProcedureEntity_Delete()
        {
            var reader = new EntityReader <CustomerInfo>();

            await Entity_StoredProcedureEntity_Create();

            var lastKey = StoredProcedureEntityTests.RecycleBin.Last();

            var testEntity = reader.GetByKey(lastKey);
            var originalId = testEntity.Id;

            Assert.IsTrue(!testEntity.IsNew);
            Assert.IsTrue(testEntity.Id != Defaults.Integer);
            Assert.IsTrue(testEntity.Key != Defaults.Guid);
            Assert.IsTrue(testEntity.CreatedDate.Date == DateTime.UtcNow.Date);

            using (var writer = new StoredProcedureWriter <CustomerInfo>(testEntity, new CustomerSPConfig(testEntity)))
            {
                testEntity = await writer.DeleteAsync();
            }
            Assert.IsTrue(testEntity.IsNew);

            testEntity = reader.GetById(originalId);
            Assert.IsTrue(testEntity.IsNew);
            Assert.IsTrue(testEntity.Id == Defaults.Integer);
            Assert.IsTrue(testEntity.Key == Defaults.Guid);
        }
コード例 #4
0
        public async Task <IActionResult> Delete(string key)
        {
            var reader   = new EntityReader <CustomerInfo>();
            var customer = reader.GetByIdOrKey(key);

            using (var writer = new StoredProcedureWriter <CustomerInfo>(customer, new CustomerSPConfig(customer)))
            {
                customer = await writer.DeleteAsync();
            }

            return(Ok(customer.CastOrFill <CustomerModel>()));
        }
コード例 #5
0
        public async Task <ActionResult> Delete(CustomerModel model)
        {
            var reader   = new EntityReader <CustomerInfo>();
            var customer = reader.GetByKey(model.Key);

            using (var writer = new StoredProcedureWriter <CustomerInfo>(customer, new CustomerSPConfig(customer)))
            {
                customer = await writer.DeleteAsync();
            }
            if (customer.IsNew)
            {
                TempData[ResultMessage] = "Successfully deleted";
            }
            else
            {
                TempData[ResultMessage] = "Failed to delete";
            }

            return(View(CustomerSearchController.SearchView, customer.CastOrFill <CustomerSearchModel>()));
        }