Я разбил свой вопрос на части, так что это будет легче для всех, включая меня. У меня есть таблица базы данных с определенными столбцами, группой, которая похожа на категорию и «last4numbers», которая начинается с 0-9999, когда на 9999 категория заполнена. У меня есть viewmodel, которая по сути является моей таблицей БД, плюс несколько дополнительных свойств. У меня есть текстовое поле, в котором есть номер, и это число, сколько раз эта запись должна быть добавлена. Каждая запись увеличивается на 1 по сравнению с последними введенными последними номерами. Я использую Entity Framework, поэтому я могу вызвать свой контекст и сделать context.add (entity) для создания записи. Каковы некоторые рекомендуемые способы добавления новой записи в базу данных, для которой столбец last4numbers находится всего в +1 от последней добавленной записи. Все записи будут находиться в одной группе деталей, но мне нужно посмотреть, есть ли в таблице x номеров. Некоторые записи пропускаются, так что именно здесь начинается сложная часть, чтобы убедиться, что номер доступен. Я получаю последний номер последнего номера с порядком списка по убыванию Last4Number, который дает мне самый последний использованный номер последнего.
//Actual model
public int ID { get; set; }
[Required]
[Display(Name = "Part Book / Category")]
public string PartBook { get; set; }
public string PartGroup { get; set; }
public string Last4Number { get; set; }
public string PartNextNumber { get; set; }
[Display(Name = "Today's Date")]
public DateTime DateEntered { get; set; }
public string Manufacturer { get; set; }
[Display(Name = "Manufacturer Part Number")]
public string ManufacturerPartNumber { get; set; }
[Required]
[CheckDropDown]
public string Usage { get; set; }
[Display(Name = "Required Project(s)")]
public string RequiredProject { get; set; }
[Range(0, Int32.MaxValue)]
//[DisplayFormat(ApplyFormatInEditMode = true, DataFormatString = "{0:#}")]
public int Quantity { get; set; }
public string Units { get; set; }
//view
@using (Html.BeginForm())
{
@Html.AntiForgeryToken()
@Html.DropDownListFor(x => x.PartBook,
(IEnumerable<SelectListItem>) ViewBag.PartBookDDL, "", new { @class = "form-control" })
<div class="col-md-3 col-lg-3">
@Html.TextBox("txtNumberNeeded", null, new { @class = "form-control", @type = "number" })
</div> ….
<input type="submit"