Я хочу, чтобы службы в моем коде могли напрямую обращаться к другим службам servicestack и с проверкой запроса.
На мой взгляд, было бы идеальным, чтобы не использовать JsonServiceClient со всеми параметрами сериализации и http и т.д., Поскольку служба работает в том же процессе.
Я знаю, что могу позвонить:
using (var service = base.ResolveService<MyService>()) {
service.Post(new MyRequest());
}
Однако этот подход не применяет мой код проверки запроса, который строится с использованием стандартных классов проверки надежности.
В идеале я мог бы дополнительно изменить контекст запроса, чтобы включить запуск с разными привилегиями и т.д.
Может ли кто-нибудь обратиться за советом, как это сделать.
Благодарю.
Вы можете использовать HostContext.ServiceController.ExecuteMessage(new Message<T>(requestDto), httpReq);
, Это передаст запрос через весь трубопровод.
Более подробная информация приведена в этом вопросе, а также более подробный ответ.
base.ExecuteRequest(requestDto)
.