2011-05-13 2 views
0

다음 상황이 발생합니다.개인 메서드에 정책 삽입을 추가하는 방법

우리는 handlerAttribute를 사용하여 policyinjection을 추가하려는 개인 메서드가 있습니다. 이 메서드는 내 인터페이스에 정의 된 몇 가지 다른 공용 메서드에서 호출합니다. 저장소에서 래퍼 된 객체를 반환하는 저장소를 인스턴스화합니다. 지금까지는 사적인 방법으로 정책 입안을 할 수 없었습니다. 잘못된 방법으로 개체를 래핑하고 있습니까? 또한 저장소 개체를 직접 인스턴스화하여 래핑 된 개체를 만들려고했습니다. 지금까지 public 메소드에 속성을 추가했다.이 경우 올바르게 작동하는 인터페이스에 속성을 추가했다. 누구든지이 작업을 수행하는 방법에 대한 단서가 있기를 바랍니다.

아래에있는 내 구현 참조 :

// 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); 
} 

답변

관련 문제