StructureMap单身人士

bkh*_*nal 3 structuremap ioc-container

这两个是等价的吗?

1)var store = new DocumentStore();

        For<IDocumentStore>().Use(store);
Run Code Online (Sandbox Code Playgroud)

2)var store = new DocumentStore();

        For<IDocumentStore>().Singleton().Use(store);
Run Code Online (Sandbox Code Playgroud)

要么

        For< IDocumentStore>().AlwaysUnique().Use(store);
Run Code Online (Sandbox Code Playgroud)

这两个都会返回没有重复实例的文档库的单例实例吗?

小智 5

AlwaysUnique()执行相反的操作并始终创建一个与singelton相反的唯一(新)实例.请参阅此stackoverflow帖子,了解如何在两个接口之间共享singeltons.

Singelton()创造了singelton.在您的示例IDocumentStore中,此接口的此容器是Singelton.(编辑):它实际上是这个容器的瞬时创建对象的singelton.请将该术语与结构图一起google.通常这些是自动创建并注入类的对象,但我还没有看到对此的确切定义.