Changing parameters at runtim

This commit is contained in:
2020-11-29 20:09:40 +01:00
parent 666e719f5d
commit 7cf622179c

View File

@ -105,22 +105,24 @@ namespace AutoFacSamles
// .WithParameter(new TypedParameter(typeof(string), "+173874872643"));
// resolved parameter
builder.RegisterType<SMSLog>()
.As<ILog>()
.WithParameter(
new ResolvedParameter(
// predicate
(pi, ctx) => pi.ParameterType == typeof(string) && pi.Name == "phoneNumber",
(pi, ctx) => "+173874872643"
)
);
//Random random = new Random();
//builder.Register((c, p) => new SMSLog(p.Named<string>("phoneNumber")));
//builder.RegisterType<SMSLog>()
// .As<ILog>()
// .WithParameter(
// new ResolvedParameter(
// // predicate
// (pi, ctx) => pi.ParameterType == typeof(string) && pi.Name == "phoneNumber",
// (pi, ctx) => "+173874872643"
// )
// );
Random random = new Random();
builder.Register((c, p) => new SMSLog(p.Named<string>("phoneNumber")))
.As<ILog>();
Console.WriteLine("About to build container ...");
var container = builder.Build();
var log = container.Resolve<ILog>();
log.Write("test message");
var log = container.Resolve<ILog>(new NamedParameter("phoneNumber", random.Next().ToString()));
log.Write("Testing");
}
}