Если я хочу иметь службу, которая создает несколько объектов, которые имеют инъекционные зависимости, как мне это кодировать?
public class MyCreator : ICreator
{
private readonly IAdapter _adapter;
public MyCreator()
{
_adapter = adapter;
}
public List<MappedObjects> Map()
{
List<MappedObjects> mo = new List<MappedObjects>();
foreach (ObjectToMap otm in ObjectToMap)
{
mo.Add(new MappedObject(otm, InjectedDependency dep));
}
}
}
Если я зарегистрирую MyCreator
в DI, он будет знать, как предоставить InjectedDependency
?
РЕДАКТИРОВАТЬ: InjectedDependency
не один экземпляр, который должен быть передан каждому MappedObject
. Я хочу новый экземпляр InjectedDependency
для каждого нового MappedObject
.
Возможно, это означает, что мне нужно создать какой-то объект Factory, который знает, как создавать экземпляры InjectedDependency
. Я не могу предоставить больше кода, потому что я не знаю, как сформулировать то, что мне нужно в C#.
Я использую встроенный DI с. NET Core 2.2.