方法: コードを使用してデータをフィルター処理する
<EntitySet>_Filter メソッドを使用することによって、レコードのサブセットのみがユーザー権限に基づいて表示されるように行レベルのセキュリティを実装できます。たとえば、従業員が自身の給与情報のみを表示できるようにする場合があります。
フィルターを適用するには
ソリューション エクスプローラーで、エンティティのショートカット メニューを開き、[開く] を選択します。
エンティティがデータ デザイナーで開かれます。
データ デザイナーのコマンド バーで、[コードの記述] の横の矢印をクリックして [EntitySet**_Filter**] をクリックします。
コード エディターが開きます。
コードをメソッドに追加します。
次のコード例は、現在のユーザーが従業員名を含むレコードのみを表示できるように、従業員のエンティティをフィルター処理します。
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; }