LiXiang98

导航

< 2025年2月 >
26 27 28 29 30 31 1
2 3 4 5 6 7 8
9 10 11 12 13 14 15
16 17 18 19 20 21 22
23 24 25 26 27 28 1
2 3 4 5 6 7 8
统计
 

比如一个方法里面是一个Task,且没有await,方法运行结束,当前Scope就释放了,此时就需要创建一个独立于当前请求的scope。

在遇到lifetime的一些其他错误的时候也可以试试使用ServiceScopeFactory。

复制代码
public class Test
{
  private readonly IServiceScopeFactory serviceScopeFactory;
  public Test(IServiceScopeFactory serviceScopeFactory)
  {
       this.serviceScopeFactory = serviceScopeFactory;
  }  
   public Task TestMeathd(string str)
    {
      return Task.Run(_=>{
        using var scope = serviceScopeFactory.CreateScope();
         var xxx =scope.ServiceProvider.GetRequiredService<xxx>();
        xxx.dosomething();
     });
    }
}            
复制代码

 

posted on   LiXiang98  阅读(46)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 【.NET】调用本地 Deepseek 模型
· CSnakes vs Python.NET:高效嵌入与灵活互通的跨语言方案对比
· DeepSeek “源神”启动!「GitHub 热点速览」
· 我与微信审核的“相爱相杀”看个人小程序副业
· Plotly.NET 一个为 .NET 打造的强大开源交互式图表库
 
点击右上角即可分享
微信分享提示