Практическое руководство. Фильтрация данных с помощью кода
С помощью метода <EntitySet>_Filter, можно реализовать безопасность на уровне строк, так что только подмножество записей будет отображаться на основе пользовательских разрешений.Например, может потребоваться разрешить сотруднику просматривать данные только о собственной зарплате.
Применение фильтра
В Обозревателе решений откройте контекстное меню для сущности, а затем выберите Открыть.
Сущность откроется в Конструкторе данных.
На панели команд в Конструкторе данных выберите стрелку рядом с кнопкой Запись кода, а затем выберите EntitySet**_Filter**.
Откроется редактор кода.
Добавьте код в метод .
В следующем примере на сущность Employees накладывается фильтр, таким образом, чтобы текущий пользователь мог отобразить только записи, содержащие его имя:
Private Sub Employees_Filter(ByRef filter As System.Linq.Expressions.Expression(Of System.Func(Of Employee, Boolean))) filter = Function(e) e.EmployeeName = Me.Application.User.Name End Sub
partial void Employees_Filter(ref Expression<Func<Employee, bool>> filter) { filter = e => e.EmployeeName == this.Application.User.Name; }
См. также
Задачи
Практическое руководство. Обработка событий данных