StructureMap で ObjectFactory.Getinstance() を呼び出すたびに、オブジェクトの新しいインスタンスが必要です。私はそれを見つけることも、自分で理解することもできませんでした。
AlwaysUnique はそれを行っていません。
[TestMethod]
public void GetConcreteInstanceOf_ShouldReturn_DifferentInstance()
{
ObjectFactory.Initialize(registry =>
{
// setup the singleton, so that it's new every time
registry.For<ISystemData>().AlwaysUnique().Use(new SystemDataClient());
});
ISystemData result = ObjectFactory.GetInstance<ISystemData>();
ISystemData result2 = ObjectFactory.GetInstance<ISystemData>();
Assert.AreNotSame(result, result2);
}