public async Task Invoke(HttpContext httpContext)
 {
     //每次请求将重新初始化全局容器确保容器唯一
     OxygenIocContainer.BuilderIocContainer(container);
     //为客户端信息添加追踪头
     OxygenIocContainer.Resolve <CustomerInfo>().SetTraceHeader(TraceHeaderHelper.GetTraceHeaders(httpContext.Request.Headers));
     await _next(httpContext);
 }
 IRemoteMessageSenderDelegate BuildSenderDelegate(MethodInfo methodInfo, Type inputType)
 {
     return((IRemoteMessageSenderDelegate)Activator.CreateInstance(typeof(RemoteMessageSenderDelegate <,>).MakeGenericType(inputType ?? typeof(object), methodInfo.ReturnType), methodInfo, OxygenIocContainer.Resolve <IRemoteMessageSender>()));
 }
Beispiel #3
0
 public T CreateProxy <T>() where T : class
 {
     return(OxygenIocContainer.Resolve <T>());
 }