protected override IController GetControllerInstance( RequestContext requestContext, Type controllerType) { try { if (controllerType == null) { return(base.GetControllerInstance(requestContext, null)); } var controller = funqBuilder.CreateInstance(controllerType) as IController; return(controller ?? base.GetControllerInstance(requestContext, controllerType)); } catch (HttpException ex) { if (ex.GetHttpCode() == 404) { try { if (ServiceStackController.CatchAllController != null) { return(ServiceStackController.CatchAllController(requestContext)); } } catch { } //ignore not found CatchAllController } throw; } }
public static ValueTask <IRedisClientAsync> GetRedisAsync(this ServiceStackController controller) => controller.ServiceStackProvider.GetRedisAsync();
public static T ResolveService <T>(this ServiceStackController controller) => controller.ServiceStackProvider.ResolveService <T>();
public static object ForwardRequestToServiceStack(this ServiceStackController controller, IRequest request = null) => controller.ServiceStackProvider.Execute(request ?? controller.ServiceStackProvider.Request);