public void ValidatePrefix(ModelPrefix modelPrefix, ModelStateDictionary ms) { if (_context.ModelPrefixes.Any(g => g.Value == modelPrefix.Value)) { ms.AddModelError("Value", "Даний префікс назви не є унікальним"); ms["Value"].ValidationState = ModelValidationState.Invalid; } }
public async Task OnPostCreate([Bind("Value")] ModelPrefix modelPrefix) { ValidatePrefix(modelPrefix, ModelState); if (ModelState.IsValid) { _context.ModelPrefixes.Add(modelPrefix); await _context.SaveChangesAsync(); } Prefixes = await _context.ModelPrefixes.ToListAsync(); }
public async Task OnPostEdit([Bind("Id, Value")] ModelPrefix modelPrefix) { var oldPrefix = _context.ModelPrefixes.AsNoTracking().SingleOrDefault(p => p.Id == modelPrefix.Id); if (ModelState.IsValid) { if (!modelPrefix.Equals(oldPrefix) && !_context.ModelPrefixes.Any(p => p.Value == modelPrefix.Value && p.Id != modelPrefix.Id)) { oldPrefix = modelPrefix; _context.ModelPrefixes.Update(oldPrefix); await _context.SaveChangesAsync(); } else { ModelState.AddModelError("Value", "Даний префікс назви не є унікальним"); ModelState["Value"].ValidationState = ModelValidationState.Invalid; } } Prefixes = await _context.ModelPrefixes.ToListAsync(); }