Le château de Windsor - multiples de la mise en œuvre d'une interface

Lors de l'inscription de composants dans le Château de Windsor, comment pouvons-nous lier spécifiques de mise en œuvre d'une interface d'un composant qui a une dépendance sur cette interface. Je sais à l'avance la mise en œuvre doit être utilisé par le composant.

Par exemple, j'ai créé un exemple de l'application de la console basée sur le code de plusieurs blogs et des tutoriels.

Voici le code.

public interface IReport
{
void LogReport();
}
public interface ILogger
{
string Log();
}
public class FileLogger : ILogger
{
public string Log()
{
return "Logged data to a file";
}
}
public class DatabaseLogger : ILogger
{
public string Log()
{
return "Logged data to a database";
}
}
public class McAfeeService : IReport
{
private readonly ILogger _logger;
public McAfeeService(ILogger logger)
{
this._logger = logger;
}
public void LogReport()
{
string getLogResult = this._logger.Log();
Console.WriteLine("McAfee Scan has " + getLogResult);
}        
}
public class NortonService : IReport
{
private readonly ILogger _logger;
public NortonService(ILogger logger)
{
this._logger = logger;
}
public void LogReport()
{
string getLogResult = this._logger.Log();
Console.WriteLine("Norton Scan has " + getLogResult);
}
}
class Program
{
private static IWindsorContainer container;
static void Main(string[] args)
{
//Register components
container = new WindsorContainer();
container.Register(Component.For<IReport>().ImplementedBy<NortonService>());
container.Register(Component.For<ILogger>().ImplementedBy<FileLogger>());
IReport service = container.Resolve<IReport>();
service.LogReport();
Console.ReadLine();
}
}

Je voudrais NortonService de toujours utiliser un Filelogger et McAfeeService utiliser une Base de données de journalisation.

Dans le programme ci-dessus, je suis incapable de lier NortonService à FileLogger.

Comment faire?