Filter roles by user

55 Views Asked by At

I've created a lookup script class to get roles on User Dialog.

I would like to filter (query) roles on Logged User capability, i.e.:

    public class RolesLookupService : RowLookupScript<RoleRow>
    {

        public RolesLookupService(ISqlConnections sqlConnections) : base(sqlConnections)
        {
            IdField = "RoleId";
            TextField = "RoleName";
        }

        protected override void PrepareQuery(SqlQuery query)
        {
            //base.PrepareQuery(query);
            var fld = RoleRow.Fields.As("fld");

            query
                .Select(fld.RoleId, fld.RoleName)
                .From(fld)
                .OrderBy(fld.RoleId, desc: false);

            **if(!User.IsInRole("System Administrator"))  {
                query.where(<my criteria>);
            }**

        }

        protected override void ApplyOrder(SqlQuery query)
        {
        }

    }

Is there a way to access logged user data in this class or on UserRow.cs (so I can set filterValue)?

Thank you, Elena

0

There are 0 best solutions below