Jak: filtrování dat pomocí kódu
Pomocí metody <EntitySet>_Filter lze naimplementovat zabezpečení na úrovni řádků tak, aby se zobrazovala pouze podmnožina záznamů v závislosti na uživatelských oprávněních.Lze tak například zaměstnanci umožnit zobrazit pouze vlastní údaje o platu.
Použití filtru
V Průzkumníkovi řešení otevřete místní nabídku pro entitu a poté zvolte Otevřít.
Entita bude otevřena Návrháři data.
Na panelu příkazů v Návrháři dat klikněte na šipku vedle tlačítka Zapsat kód a poté zvolte EntitySet**_Filter**.
Otevře se editor kódu.
Přidejte kód do metody.
Následující ukázka kódu filtruje entitu Zaměstnanec tak, aby aktuální uživatel mohl zobrazit pouze záznamy obsahující jeho Jméno zaměstnance:
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; }