public void DeleteAllImage(string id)
 {
     using (var repo = new ImageStoreService())
     {
         var items = repo.GetAll();
         foreach (var item in items)
         {
             string newId = item.imgId.Substring(0, item.imgId.Length - 1);
             if (newId.Equals(id))
             {
                 var itemToDelete = repo.GetById(item.imgId);
                 repo.Delete(itemToDelete);
             }
         }
     }
 }
        public void PostEdit(ItemModelview model)
        {
            using (var repo = new ImageStoreService())
            {
                // Find all item with the same reference number
                var ImageStore = repo.GetAll().Where(x => x.imgId.Substring(0, x.imgId.Length - 1).Equals(model.ItemRef)).ToList();
                //from website
                if (model.ImageFile != null)
                {
                    //check the number of picture
                    int NumberOfItem = model.ImageFile.Count();
                    if (ImageStore.Count() > NumberOfItem)
                    {
                        //will delete the remaining of ImageStore
                        int count = 0;

                        byte[] imgbyte = null;
                        //update item with new details
                        foreach (var item in ImageStore)
                        {
                            BinaryReader reader = new BinaryReader(model.ImageFile[count].InputStream);
                            imgbyte       = reader.ReadBytes(model.ImageFile[count].ContentLength);
                            item.ItemName = model.ItemName;
                            item.imgByte  = imgbyte;
                            repo.Update(item);
                            count++;
                        }

                        //delete the remainig
                        for (int i = model.ImageFile.Count() + 1; i < ImageStore.Count(); i++)
                        {
                            var ItemToDelete = ImageStore[i];
                            repo.Delete(ItemToDelete);
                        }
                    }
                    else
                    {
                        // will add the remaing of model.ImageFile
                    }
                }
                //from app
                else
                {
                    for (int i = 0; i < model.Lstsrc.Count(); i++)
                    {
                        var itemToUpdate = ImageStore[i];
                        itemToUpdate.ItemName = model.ItemName;
                        itemToUpdate.imgByte  = model.Lstsrc[i];
                        repo.Update(itemToUpdate);
                    }

                    // Delete the remaining item
                    //1 bcz they will be only one pic from app and
                    //the number of img in imageStore must not be one
                    if (model.Lstsrc.Count() == 1 && ImageStore.Count() > 1)
                    {
                        for (int i = 1; i < ImageStore.Count(); i++)
                        {
                            var ItemToDelete = ImageStore[i];
                            repo.Delete(ItemToDelete);
                        }
                    }
                }
            }
        }