ServiceAuthorizationManager 구현에 저장소 (단일성 사용)를 주입하고 싶습니다. 가능한가?Unity를 사용하여 ServiceAuthorizationManager에 저장소를 삽입하십시오.
public class APIKeyAuthorization : ServiceAuthorizationManager
{
private readonly IKeysService _keysService;
public APIKeyAuthorization(KeysService keysService)
{
_keysService = keysService;
}
protected override bool CheckAccessCore(OperationContext operationContext)
{
//var _keysService = new KeysService();
string key = GetAPIKey(operationContext);
string endpoint = GetEndpoint(operationContext); //ip address
if (_keysService.IsValidKey(key, endpoint))
{
return true;
}
else
{
// Send back an HTML reply
CreateErrorReply(operationContext, key);
return false;
}
}
나는 teh 코드를 제공합니다. 뭐라도 시도해 봤어? 예, 가능하고 덮어 쓰며 재정의 된 클래스에 삽입합니다. http://msdn.microsoft.com/en-us/library/ms731774.aspx – DarthVader
질문이 덮어 쓰기 클래스로 업데이트되었습니다. 다음과 같은 유형을 등록했습니다 : container.RegisterType(); container.RegisterType (); –