AccessPolicyTAccessSubject, TContext - конструктор

Универсальный класс политики проверки доступности объектов. Используется для проверки наличия доступа к объекту через список правил IAccessRuleTAccessSubject, TMandatoryContext получаемых в конструкторе класса. Правила доступности по умолчанию должны регистрироваться в контейнере приложения. Базовая политика доступности с помощью контейнера приложения поддерживает два вида правил. Правила не зависимые от субъекта доступа и контекста должны быть реализованы как открытие обобщенные классы:

Пример

public class ConcreteRule<TAccessSubject, TContext> : IAccessRule<TAccessSuject, TContext> { .... } container.RegisterType(typeof(IAccessRule<,>), typeof(ConcreteRule<,>), typeof(ConcreteRule<>).Name);
закрытие классы:

Пример

public class ConcreteRule: IAccessRule<ConcreteAccessSubject, ConcreteContext> { .... } container.RegisterType<IAccessRule<ConcreteAccessSubject, ConcreteContext>, ConcreteRule>();
При получении политики IAccessPolicy<ConcreteAccessSubject, ConcreteContext> из контейнера будут получены оба вида правил. Унаследование классы могут использовать собственные типы правил и получать их из контейнера, через конструктор отдельно от предыдущих двух типов и затем добавляя из в список правил политики через AddRange(IEnumerableIAccessRuleTAccessSubject, TContext), приводя к базовому типу.

Definition

Пространство имён: Tessa.Views.AccessPolicy
Сборка: Tessa (в Tessa.dll) Версия: 4.1.3+7e2b1422f9b8c7c41fbbc4b151a843bed05319ab
C#
public AccessPolicy(
	IEnumerable<IAccessRule<TAccessSubject, TContext>>? rules = null
)

Параметры

rules  IEnumerableIAccessRuleTAccessSubject, TContext  (Optional)
 

См. также