I try register collection of implementations but everytime I get error message
“-[Lifestyle Mismatch] ReportFileWriter (Singleton) depends on IFileWriter[] (Transient).”
I dont know what else to try. Please help.
First attempt
container.Register<IReportFileWriter, ReportFileWriter>(Lifestyle.Singleton);
var fileWriters = new List<Type>() { typeof(CsvFileWriter), typeof(XlsFileWriter) };
container.Collection.Register<IFileWriter>(fileWriters, Lifestyle.Singleton);
Second attempt
container.Register<IReportFileWriter, ReportFileWriter>(Lifestyle.Singleton);
var fileWriters = new List<Type>() { typeof(CsvFileWriter), typeof(XlsFileWriter) };
container.Collection.Register<IFileWriter>(fileWriters.Select(s=>Lifestyle.Singleton.CreateRegistration(s, container)));
Third attempt
container.Register<IReportFileWriter, ReportFileWriter>(Lifestyle.Singleton);
container.Register<CsvFileWriter>(Lifestyle.Singleton);
container.Register<XlsFileWriter>(Lifestyle.Singleton);
var fileWriters = new List<Type>() { typeof(CsvFileWriter), typeof(XlsFileWriter) };
container.Collection.Register<IFileWriter>(fileWriters, Lifestyle.Singleton);