private void HandleItem(ClientContext clientContext, List pdfConverterList, ListItem pdfConversionItem) { clientContext.Load(pdfConversionItem, item => item.File); clientContext.ExecuteQuery(); var isTxtFile = pdfConversionItem.File.Name.EndsWith(".txt"); if (!isTxtFile) { return; } var stream = pdfConversionItem.File.OpenBinaryStream(); clientContext.ExecuteQuery(); string htmlCode; using (StreamReader reader = new StreamReader(stream.Value)) { htmlCode = reader.ReadToEnd(); } if (string.IsNullOrEmpty(htmlCode)) { return; } var fileName = GenerateUniqueName(clientContext, pdfConverterList); htmlCode = PdfConverter.CleanHtmlCodeForConversion(htmlCode); var fileBytes = PdfConverter.ConvertHtmltoPdf(clientContext, pdfConverterList, htmlCode, fileName); FileCreationInformation newFile = new FileCreationInformation { Content = fileBytes, Url = fileName }; var uploadFile = pdfConverterList.RootFolder.Files.Add(newFile); clientContext.ExecuteQuery(); }