public async Task <Try <Exception, Option <string> > > ReplaceTryOneAsync(Core.ViewModel.User model) { await UserRepository .ReplaceOneAsync(Builders <Repository.Entity.User> .Filter.Eq("Key", model.Key), model.ProjectTo <Repository.Entity.User>()); return(await "Sucess!".ProjectToTryOptionAsync()); }
public async Task <Try <Exception, Option <string> > > InsertTryOneAsync(Core.ViewModel.User model) { try { await UserRepository .InsertAsync(model.ProjectTo <Repository.Entity.User>().Create()); return(await "Sucess!".ProjectToTryOptionAsync()); } catch (Exception e) { throw; } }
//public async Task<Try<Exception, Option<List<Model.User>>>> GetAllTestAsync(Model.User model) //{ // return await Execute(GetAsync, model); //} public async Task <Try <Exception, Option <List <Core.ViewModel.User> > > > GetAllTryAsync(Core.ViewModel.User model) => await Task.Run(async() => await (await UserRepository .GetAllAsync(model)) .ProjectToOptionAsync <Core.ViewModel.User>());
//Function not exception public async Task <Try <Exception, Task <Option <List <Core.ViewModel.User> > > > > GetAllTryOptionAsync(Core.ViewModel.User model) => await Task.Run(() => Try.Run(() => GetAllAsyncFunc).Apply(Try.Run(() => model)));
public async Task <Option <List <Core.ViewModel.User> > > GetAllAsync(Core.ViewModel.User model) => await(await UserRepository .GetAllAsync(model)) .ProjectToOptionAsync <Core.ViewModel.User>();