I am using ASP.NET MVC and Ninject. I need conditional binding for the parameter name. How can i do this?
private readonly ITemplateProvider _msgTemplate;
private readonly ITemplateProvider _mailTemplate;
public OrderLineManager(ITemplateProvider msgTemplate,ITemplateProvider mailTemplate)
{
_msgTemplate = msgTemplate;
_mailTemplate = mailTemplate;
}
_kernel.Bind<ITemplateProvider>()
.To<MessageTemplateProvider>()
.When(request => request.Target.Member.Name.Equals("msgTemplate"));
_kernel.Bind<ITemplateProvider>()
.To<MailTemplateProvider>()
.When(request => request.Target.Member.Name.Equals("mailTemplate"));
source
share