Я использую контейнер Castle Windosr. Я хочу быть в состоянии указать некоторые зависимости конструктора во время выполнения, что вы, очевидно, можете сделать, используя перегрузку Resolve, которая принимает словарь, все хорошо и хорошо. Однако, если я хочу указать зависимость времени выполнения для зависимости корня, то я потерян, в настоящий момент я обошел вокруг, явно создавая каждый и добавляя его. По сути, это сценарий декоратора, и я хочу получить экземпляр декаратор, в то же время обеспечивая зависимость во время выполнения для декорируемого объекта. Есть идеи? Я бы предпочел не делать то, что я делаю ниже, и я бы предпочел, чтобы конструктор decarator не заполнял объект снизу, так как будут времена, когда зависимости не совпадают.
public static IActivity GetActivityFromIoC(string key, Message message, Audit audit)
{
IActivity activity = IoC.Resolve<IActivity>(key, new Dictionary<
string, object>(){
{ "message", message }
});
IActivity auditingActivity = IoC.Resolve<IActivity>("auditing.activity", new Dictionary<
string, object>(){
{ "activity", activity },
{ "message", message },
{ "audit", audit }
});
return auditingActivity;
}