asp.net-web-api – 我可以在WebAPI messageHandler中使用Autofac DI吗?
发布时间:2020-05-24 19:37:49 所属栏目:asp.Net 来源:互联网
导读:我成功地在我的ASP.NET WebAPI项目中连接了Autofac,现在我想知道如何能够解决我的MessageHandlers中的服务. 由于MessageHandler必须在应用程序启动时添加,很明显,我将无法在请求生存期内解决这些问题.这里没有问题 但是,我想在MessageHandler的SendAsync方法
|
我成功地在我的ASP.NET WebAPI项目中连接了Autofac,现在我想知道如何能够解决我的MessageHandlers中的服务. 由于MessageHandler必须在应用程序启动时添加,很明显,我将无法在请求生存期内解决这些问题.这里没有问题 但是,我想在MessageHandler的SendAsync方法执行期间找到一种获取当前请求生存范围的方法,以便能够(例如)执行令牌验证,登录存储库等… 我该怎么办? 解决方法您可以在HttpRequestMessage上使用GetDependencyScope()扩展方法,该方法为您提供了一个IDependencyScope,您可以从其中解析您处理程序中所需的任何服务:public class MyHandler : DelegatingHandler
{
protected override Task<HttpResponseMessage> SendAsync(
HttpRequestMessage request,CancellationToken cancellationToken)
{
IMyService myservice =
(IMyService)request.GetDependencyScope().GetService(typeof(IMyService));
// Do my stuff with myservice
return base.SendAsync(request,cancellationToken);
}
} (编辑:安卓应用网) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
相关内容
- asp.net-mvc-3 – 如果Controller.OnAuthorization()返回vo
- ASP.NET Mvc Api:设置cookie然后302/303 Redirect丢失cook
- 使用asp.net渲染无序列表
- ASP.NET MVC问题配置表单认证部分
- ASP.NET工作进程仍然以31kb的大小返回数据
- asp.net – 在自托管Web应用程序中使用性能计数器
- asp.net-mvc – 如果value为空,在razor模板上放置一个空字符
- asp.net-mvc – Asp.Net MVC 2 Html.TextBoxFor为模型的Dat
- asp.net-mvc – 如何获得html.ActionLink结果文本的href部分
- asp.net-mvc – 如何使用Entity Framework和Membership表初
推荐文章
站长推荐
- 连字符前分割字符串 – asp.net c#
- asp.net-mvc – ASP.NET MVC:处理取消按钮的正确
- asp.net – 会话 – 多个浏览器选项卡 – 不同的
- asp.net – System.Net.Mail新MailMessage随机发
- 在Azure中为ASP.NET Core Web应用程序设置SQL连接
- asp.net – Request.Url.AbsoluteUri和重写的URL
- ASP.Net使用DBNULL检查值
- 使用asp.net mvc进行基于REST的端点
- asp.net-mvc – 异步HttpModule MVC
- asp.net – IIS配置错误 – 此配置部分不能用于此
热点阅读
