public async Task <IActionResult> UpdateDbAccount(int id, MyDBAcctsResources mydbcctsresources) { /* if (!ModelState.IsValid) * return BadRequest(ModelState); */ var dbaccount = await context.myDbAccts.FindAsync(id); if (dbaccount == null) { return(NotFound()); } mapper.Map <MyDBAcctsResources, MyDbAcct>(mydbcctsresources, dbaccount); await context.SaveChangesAsync(); var result = mapper.Map <MyDbAcct, MyDBAcctsResources>(dbaccount); return(Ok(result)); }
public async Task <IActionResult> CreateDbAccounts(MyDBAcctsResources acctsResource) { //throw new Exception(); if (!ModelState.IsValid) { return(BadRequest(ModelState)); } //acctsResource.nodePath = HierarchyId.Parse(acctsResource.path); HierarchyId parentItem = HierarchyId.Parse(acctsResource.nodePath); //var parent = context.myDbAccts.FirstOrDefault(e => e.nodePath == HierarchyId.Parse(acctsResource.nodePath).GetAncestor(1)); var lastItemInCurrentLevel = context.myDbAccts.Where(x => x.nodePath.GetAncestor(1) == parentItem) .OrderByDescending(x => x.nodePath) .FirstOrDefault(); var child1Node = lastItemInCurrentLevel != null ? lastItemInCurrentLevel.nodePath : null; var newNode = parentItem.GetDescendant(child1Node, null); acctsResource.nodePath = newNode.ToString(); var acct = mapper.Map <MyDBAcctsResources, MyDbAcct>(acctsResource); context.myDbAccts.Add(acct); //foreach (var item in purchaseResource.purchaseItems) //{ // context.purchaseItems.Add(item); //} await context.SaveChangesAsync(); var result = mapper.Map <MyDbAcct, MyDBAcctsResources>(acct); return(Ok(result)); }