Здравствуйте, Sharov, Вы писали:
S>Здравствуйте, okon, Вы писали:
O>>Подразумевается что Resolve делается один раз для корневого объекта, а остальные зависимости сидят в конструкторах и вычисляются автоматом.
S>А почему я не могу для разных объектов,т.е. типов, делать Resolve? Для типа по контейнеру?
Основная идея я так понимаю делать это все при настройке контейнера, в том числе если что-то надо ресолвить когда-то потом, создается функция как-то так
void RegisterTypesInContainer()
{
...
container.Register<Func<MyClass>>( ()=> container.Resolve<MyClass>() );
...
}
и потом где-то в коде вместо того чтобы делать container.Resolve()
public class Foo
{
Foo( Func<MyClass> myClassFactory )
{
MyClass instance = myClassFactory();
}
}
вместо Func<MyClass>() можно делать какие-нибудь IMyClassFactory
”Жить стало лучше... но противнее. Люди которые ставят точку после слова лучше становятся сторонниками Путина, наши же сторонники делают акцент на слове противнее ( ложь, воровство, лицемерие, вражда )." (с) Борис Немцов