gpt4 book ai didi

c#-4.0 - StructureMap - 每个命名实例的不同生命周期

转载 作者:行者123 更新时间:2023-12-04 18:18:54 26 4
gpt4 key购买 nike

看起来您在 StructureMap 中每个插件类型只能有一个生命周期策略。有没有办法解决?这个简单的控制台应用程序演示了“最后”“获胜”的任何生命周期。

namespace StructureMapLifecycle
{
public class Program
{
public static void Main(string[] args)
{
StructureMap.ObjectFactory.Initialize(
x =>
{
x.For<ISomething>().Add<SomethingA>().Named("A");
x.For<ISomething>().Singleton().Add<SomethingB>().Named("B");
x.For<ISomething>().Add<SomethingC>().Named("C");
x.For<ISomething>().HybridHttpOrThreadLocalScoped().Use<SomethingC>();
});

Console.Write(StructureMap.ObjectFactory.WhatDoIHave());
Console.ReadLine();
}
}

public interface ISomething
{
void DoSomething();
}

public class SomethingA : ISomething
{
public void DoSomething()
{
Console.WriteLine("Do something A");
}
}

public class SomethingB : ISomething
{
public void DoSomething()
{
Console.WriteLine("Do something B");
}
}

public class SomethingC : ISomething
{
public void DoSomething()
{
Console.WriteLine("Do something C");
}
}
}

最佳答案

我的一位同事发现 Jeremy Miller 指出这是 StructureMap 的长期限制。 http://jeremydmiller.com/2012/01/11/kicking-off-structuremap-3/

关于c#-4.0 - StructureMap - 每个命名实例的不同生命周期,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11120111/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com