public void Add(string name, GridWithStartAndEnd grid) { var newGrid = mapper.Map <Entities.Grid>(grid); newGrid.Name = name; context.Grids.Add(newGrid); context.SaveChanges(); }
public async Task AddAsync(string name, GridWithStartAndEnd grid) { if (await MazeExistsAsync(name)) { throw new ArgumentException($"maze with name \"{name}\" has already exists"); } await repository.AddAsync(name, grid); }
public void Add(string name, GridWithStartAndEnd grid) { if (MazeExists(name)) { throw new ArgumentException($"maze with name \"{name}\" has already exists"); } repository.Add(name, grid); }
public async Task AddAsync(string name, GridWithStartAndEnd grid) { var newGrid = mapper.Map <Entities.Grid>(grid); newGrid.Name = name; await context.Grids.AddAsync(newGrid); await context.SaveChangesAsync(); }
public static bool TryGetValue(this IMazeRepository repository, string name, out GridWithStartAndEnd value) { try { value = repository.Get(name); return(value != null); } catch (Exception) { value = null; return(false); } }
public async Task <GridWithStartAndEnd> GetAsync(string name) { GridWithStartAndEnd maze = null; if (await repository.TryGetValueAsync(name, value => maze = value)) { return(maze); } var generatedMaze = mazeCreationFactory.Create(name); if (generatedMaze != null) { return(generatedMaze); } throw new ArgumentException($"maze not found {name}"); }