public static CsvReader CreateReader(this ICsvReaderService csvReaderService, string fileName, ICsvContext csvContext) { Argument.IsNotNull(() => csvReaderService); var dependencyResolver = csvReaderService.GetDependencyResolver(); var fileService = dependencyResolver.Resolve <IFileService>(); // Note: don't dispose, the reader cannot be used when disposed var stream = fileService.OpenRead(fileName); var streamReader = new StreamReader(stream); return(csvReaderService.CreateReader(streamReader, csvContext)); }
public static IEnumerable ReadRecords(this ICsvReaderService csvReaderService, string fileName, ICsvContext csvContext) { Argument.IsNotNull(() => csvReaderService); var dependencyResolver = csvReaderService.GetDependencyResolver(); var fileService = dependencyResolver.Resolve <IFileService>(); using (var stream = fileService.OpenRead(fileName)) { using (var streamReader = new StreamReader(stream)) { var records = csvReaderService.ReadRecords(streamReader, csvContext); return(records); } } }