Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/google-app-engine/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 在结构映射3中,HybridHttpOrthReadLocalScope的等价物是什么?_C#_Dependency Injection_Structuremap_Structuremap3 - Fatal编程技术网

C# 在结构映射3中,HybridHttpOrthReadLocalScope的等价物是什么?

C# 在结构映射3中,HybridHttpOrthReadLocalScope的等价物是什么?,c#,dependency-injection,structuremap,structuremap3,C#,Dependency Injection,Structuremap,Structuremap3,使用structuremap 2.6.4.1,我的容器的配置如下: existingContainer.Configure(expression => { expression.For<IDocumentSession>() .HybridHttpOrThreadLocalScoped() .Use(container => { var store =

使用structuremap 2.6.4.1,我的容器的配置如下:

existingContainer.Configure(expression =>
{
    expression.For<IDocumentSession>()                    
        .HybridHttpOrThreadLocalScoped()
        .Use(container =>
        {
            var store = container.GetInstance<IDocumentStore>();                        
            return store.OpenSession();
         });
}
existingContainer.Configure(表达式=>
{
表达式。For()
.HybridHttpOrthReadLocalScope()文件
.Use(容器=>
{
var store=container.GetInstance();
返回store.OpenSession();
});
}

HybridHttpOrthReadLocalScope
在structuremap 3中不存在,所以我的问题是,structuremap 3中的等效配置是什么?

它就在那里,这里说它现在是一个structuremap.Web nuget,需要添加到您的项目中才能工作。

从structuremap 3开始,任何与
HttpContext
相关的东西都在sep中存在名为
StructureMap.Web
的arate Nuget包,可以使用


原因是StructureMap 3现在是PLC(Portalble类库)兼容,因此将与web相关的生命周期拆分为自己的包是有意义的。

您应该非常小心每线程的生命方式。请看这个问题:。@Steven这是对structuremap的不准确评估,如果没有单元/集成测试中的上下文,它将只退回到线程生命周期。
HybridHtTPorthreadLocalScope
是structuremap@ChrisMarisic:我不同意你的观点。即使在单元测试中,这也是不好的,因为这会阻止测试独立运行。但是,即使在单元测试中使用每线程的生活方式,这仍然不是使用HybridHttpOrThreadLocalScoped的好理由e> 在您的生产配置中,因为在没有HTTP上下文的情况下,对象将在应用程序的整个过程中都有效;这绝不是一个好主意。我们将不同意。HybridHttpOrthReadLocalScope是使用StructureMap的最终原因,我在使用StructureMap的每个项目中都使用它,我认为您我应该回答他的问题。我在StructureMap.Web中没有看到任何混合方法。它在那里,看看