public async Task Save(Entities.PhoneBook phoneBook)
        {
            var param = new DynamicParameters(phoneBook);

            param.Output(phoneBook, x => x.PhoneBookId);
            await base.Save("spSave_PhoneBook", param);
        }
        public Entities.PhoneBook SavePhoneBook(SavePhoneBookDto savePhoneBookDto)
        {
            var config   = Configuration.Configurations.Config;
            var filePath = Path.Combine(config.Directory, "pb.json");

            CreateFileIfNotExists();

            var phoneBooks = GetPhoneBooks();

            var phoneBook = phoneBooks
                            .FirstOrDefault(p => p.Id == savePhoneBookDto.Id);

            Entities.PhoneBook toReturn;

            // if null then add new
            if (phoneBook == null)
            {
                var toAdd = new Entities.PhoneBook
                {
                    Id     = Guid.NewGuid(),
                    Name   = savePhoneBookDto.Name,
                    Number = savePhoneBookDto.Number,
                    Type   = savePhoneBookDto.Type
                };

                phoneBooks.Add(toAdd);
                toReturn = toAdd;
            }
            // else edit
            else
            {
                phoneBook.Name   = savePhoneBookDto.Name;
                phoneBook.Number = savePhoneBookDto.Number;
                phoneBook.Type   = savePhoneBookDto.Type;
                toReturn         = phoneBook;
            }

            var phoneBookStr = JsonSerializer.Serialize(phoneBooks);

            _locker.EnterWriteLock();

            try
            {
                File.WriteAllText(filePath, phoneBookStr);
            }
            finally
            {
                _locker.ExitWriteLock();
            }

            return(toReturn);
        }
Ejemplo n.º 3
0
        public async Task <ActionResult <Entities.PhoneBook> > Save(Entities.PhoneBook phoneBook)
        {
            await _phoneBookRepository.Save(phoneBook);

            return(phoneBook);
        }
 public Task Update(Entities.PhoneBook entity)
 {
     _repository.Update(entity);
     return(Task.CompletedTask);
 }
 public async Task Create(Entities.PhoneBook entity)
 {
     await _repository.AddAsync(entity);
 }