Добрый день, я новичок в Dev Express, а также на бритвенных страницах.
У меня есть сетка данных dev extreme со списком пользователей, у пользователя есть тип пользователя, тип пользователя имеет минимальный диапазони максимальный диапазон для идентификатора пользователя.
Я хочу установить правило проверки диапазона для столбца в стандартной форме редактирования сетки данных, поэтому при добавлении нового идентификатора пользователя идентификатор пользователя должен находиться междунапример 1 и 49999. Диапазон сохраняется в базе данных. Таким образом, пользователь сначала выбирает тип пользователя, в таблице пользовательских типов будет диапазон, например, у типа пользователя «Сотрудник» будет диапазон от мин 1 до 49999, этот диапазон я хочу использовать в качестве проверки в моей форме.
Мой код сетки данных DevExtreme в настоящее время:
@(Html.DevExtreme().DataGrid<ACS.LIB.BE.User>().ID("userGrid")
.ElementAttr(new { @class = "dx-card wide-card" })
.DataSource(d => d.Mvc().Controller("User")
.LoadAction("Get").Key("ID")
.InsertAction("InsertUser")
.UpdateAction("UpdateUser")
.DeleteAction("DeleteUser"))
.ShowBorders(false)
.FilterRow(f => f.Visible(true))
.FocusedRowEnabled(true)
.FocusedRowIndex(0)
.ColumnAutoWidth(true)
.ColumnHidingEnabled(true)
.Columns(columns =>
{
columns.AddFor(m => m.ID).ValidationRules(val => val.AddRange().Min(100));
columns.AddFor(m => m.Name);
columns.AddFor(m => m.UserType.ID).Lookup(lookup => lookup
.DataSource(ds => ds.WebApi().Controller("UserType").LoadAction("Get").Key("ID"))
.DisplayExpr("Name")
.ValueExpr("ID")
).Caption("User Type");
columns.AddFor(m => m.Department.ID).Lookup(lookup => lookup
.DataSource(ds => ds.WebApi().Controller("Department").LoadAction("Get").Key("ID"))
.ValueExpr("ID")
.DisplayExpr("Name")
).Caption("Department");
columns.AddFor(m => m.Company.ID).Lookup(lookup => lookup
.DataSource(ds => ds.WebApi().Controller("Company").LoadAction("Get").Key("ID"))
.ValueExpr("ID")
.DisplayExpr("Name")
).Caption("Company");
columns.AddFor(m => m.Authority);
columns.AddFor(m => m.Email).ValidationRules(v => v.AddEmail().Message("Please enter a valid email address. yourname@yourdomain.com"));
columns.AddFor(m => m.Active).FilterValue(true);
})
Строка, с которой у меня проблема: columns.AddFor(m => m.ID).ValidationRules(val => val.AddRange().Min(100));
Мин. (100) Я хочу установить его динамически изисточник данных не жестко запрограммирован, как сейчас, пользователь сначала выбирает тип пользователя, а затем я хочу использовать таблицу UserType, чтобы получить диапазон значений идентификатора. Поэтому я хочу получить 100 из моей таблицы пользователей, но я неуверен, что синтаксис будет или как я должен это делать.
Моя таблица типов пользователей:
По умолчанию всплывающее окно моего экрана вставки из диалогового окна редактированиясетка данных.
Любая помощь или указатели будут оценены.