Как сохранить элементы из CheckBoxList в FormView?
-
10-07-2019 - |
Вопрос
Я использую CheckBoxList внутри FormView с ObjectDataSource . Чтобы привязать выбранные значения к CheckBoxList , я использую событие FormView_DataBound , чтобы найти CheckBoxList и установить выбранные элементы. Это отлично работает. Р>
Теперь сохранение этих значений становится проблематичным. Можно ли использовать ObjectDataSource для обновления этих значений или мне нужно сохранить их после сохранения ObjectDataSource ?
Решение
поместите этот код в событие вставки в форму просмотра ... Повторяйте список флажков, добавляйте выбранный элемент в таблицу данных и передавайте его в свой BLL
CheckBoxList chklRoles = (CheckBoxList)frm.FindControl("chklRoles");
foreach (ListItem liRole in chklRoles.Items)
{
if (liRole.Selected)
{
SecurityDS.SC_RoleRow drwRoles = dtblRoles.NewSC_RoleRow();
drwRoles.Name = liRole.Value;
drwRoles.IsActive = false;
dtblRoles.Rows.Add(drwRoles);
}
}
e.Values["userRole"] = dtblRoles;
Код страницы ASPX .. тип параметра
<InsertParameters>
<asp:Parameter Name="userRole" Type="Object" />
</InsertParameters>
а затем выполните итерации данных в вашем BLL и сохраните в БД соответственно