gpt4 book ai didi

类库/dll 中的结构图 Bootstrap

转载 作者:行者123 更新时间:2023-12-03 09:27:04 25 4
gpt4 key购买 nike

使用结构图引导 dll 的最佳方法是什么?我真的不希望图书馆的使用者在他们不想的时候不得不自己配置任何东西。我认为 .config 可能是最简单的,但是 2.6.1 又出来了,我还不熟悉它的许多功能/更改。

最佳答案

正如我在上面的评论中提到的,您可以使用工厂方法来确保 StructureMap 容器启动并准备好进入您的库中的顶级类。这是一个例子。

public interface ILibraryClass
{
void SomethingAwesome();
}

public class LibraryClass : ILibraryClass
{
public void SomethingAwesome()
{
}
}

public class API
{
private static IContainer _container;

private static IContainer Container
{
get
{
if (_container == null) //TODO add locking around this for thread safety?
InitializeContainer();

return _container;
}
}

private static void InitializeContainer()
{
_container = new Container(config => { config.For<ILibraryClass>().Use<LibraryClass>(); });
}

public static ILibraryClass LibraryClass()
{
return Container.GetInstance<ILibraryClass>();
}
}

[Test]
public void library_factory_method()
{
API.LibraryClass().ShouldBeOfType<LibraryClass>();
}

关于类库/dll 中的结构图 Bootstrap ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2383421/

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