activating eventhandler
This commit is contained in:
@ -15,6 +15,11 @@ namespace AutoFacSamples2
|
||||
{
|
||||
public string Name { get; set; }
|
||||
public Parent Parent { get; set; }
|
||||
|
||||
public void SetParent(Parent parent)
|
||||
{
|
||||
Parent = parent;
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@ -25,7 +30,25 @@ namespace AutoFacSamples2
|
||||
var builder = new ContainerBuilder();
|
||||
builder.RegisterType<Parent>();
|
||||
|
||||
builder.RegisterType<Child>().PropertiesAutowired();
|
||||
//1/builder.RegisterType<Child>().PropertiesAutowired();
|
||||
|
||||
//2/builder.RegisterType<Child>()
|
||||
//2/ .WithProperty("Parent", new Parent());
|
||||
|
||||
//3/builder.Register(c =>
|
||||
//3/{
|
||||
//3/ var child = new Child();
|
||||
//3/ child.SetParent(c.Resolve<Parent>());
|
||||
//3/ return child;
|
||||
//3/});
|
||||
|
||||
builder.RegisterType<Child>()
|
||||
.OnActivated(e =>
|
||||
{
|
||||
var p = e.Context.Resolve<Parent>();
|
||||
e.Instance.SetParent(p);
|
||||
});
|
||||
|
||||
|
||||
var container = builder.Build();
|
||||
var parent = container.Resolve<Child>().Parent;
|
||||
|
||||
Reference in New Issue
Block a user