Pregunta

Say, I have a LogAttribute class like this:

  public class LogAttribute : RequestFilterAttribute {
    public override void Execute(IHttpRequest req, 
                                 IHttpResponse res, 
                                 object dto) { /*...*/ }
  }    
  [Log]
  public class TransportService : Service { /*...*/ }
  [Log]
  public class HealthService : Service { /*...*/ }

How does the LogAttribute class know what class it is calling from? Namely, TransportService or HealthService?

¿Fue útil?

Solución

You can use the Request DTO that's passed in as well as the metadata ServiceStack maintains about your service, e.g:

var serviceType = HostContext.Metadata.GetServiceTypeByRequest(dto.GetType());
Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top