public Task <ValueModel?> Create(ValueModel value) { int nextId = (from v in _values select v.Key).Max() + 1; value.Id = nextId; return(_values.TryAdd(value.Id, value) ? Task.FromResult <ValueModel?>(value) : Task.FromResult <ValueModel?>(null)); }
public Task <ValueModel?> Update(ValueModel value) { if (!_values.TryGetValue(value.Id, out var comparisonValue)) { throw new NotFoundException(); } return(_values.TryUpdate(value.Id, value, comparisonValue) ? Task.FromResult <ValueModel?>(value) : Task.FromResult <ValueModel?>(null)); }