コード例 #1
0
 public DataPrivilegeManager(IDataPriviegeRepository <TRule, TRuleRole, TRuleUser> dataPriviegeRepository,
                             TDbContext dbContext,
                             IDataPrivilegeFieldProvider dataPrivilegeFieldProvider,
                             IUserSessionInfo userSessionInfo,
                             DataPrivilegeVisitor <TDbContext, TEntity> dataPrivilegeVisitor)
 {
     DbContext = dbContext;
     DataPrivilegeFieldProvider = dataPrivilegeFieldProvider;
     UserSessionInfo            = userSessionInfo;
     DataPrivilegeVisitor       = dataPrivilegeVisitor;
     DataPriviegeRepository     = dataPriviegeRepository;
 }
コード例 #2
0
        public DataPrivilegeContext(List <TRule> rules,
                                    TDbContext dbContext,
                                    IDataPrivilegeFieldProvider dataPrivilegeFieldProvider,
                                    DataPrivilegeVisitor <TDbContext, TEntity> dataPrivilegeVisitor)
        {
            Rules = rules;
            var comparer = new CommonComparer <TRule>((x, y) => {
                int left  = x.ConditionExpression.GetHashCode();
                int right = y.ConditionExpression.GetHashCode();
                return(left.CompareTo(right));
            });

            Rules.Sort(comparer);
            DbContext = dbContext;
            DataPrivilegeFieldProvider = dataPrivilegeFieldProvider;
            DataPrivilegeVisitor       = dataPrivilegeVisitor;
        }