У меня следующая ситуация.
У нас есть закрытый метод, в который я хочу добавить политическую инъекцию с помощью атрибута handler. Этот метод вызывается несколькими различными открытыми методами, которые определены в моем интерфейсе. Я создаю экземпляр хранилища на фабрике, где я возвращаю завернутый объект. До сих пор я не могу заставить политинъекцию работать над моим личным методом. Я неправильно обертываю объект? Я также попытался создать обернутый объект, непосредственно создав экземпляр объекта репозитория. До сих пор я только добавлял атрибут в публичные методы, в этом случае я добавил атрибут в интерфейсе, который работает правильно. Надеюсь, что кто-нибудь знает, как заставить это работать.
См. Мою реализацию ниже:
// My factory implementation
public static ICacheRepository Repository()
{
return PolicyInjection.Create<CacheRepository, ICacheRepository>();
}
// My repository
public class CacheRepository : MarshalByRefObject, ICacheRepository
{
public void Add(string name)
{
Check(name);
}
public void Update(string name)
{
Check(name);
}
public void Delete(string name)
{
Check(name);
}
[NotNull] // <= HandlerAttribute
private bool Check(string name)
{
return true;
}
}
// My CacheRepository interface.
public interface ICacheRepository
{
void Add(string name);
void Update(string name);
void Delete(string name);
}