Exemplo n.º 1
0
        public void CsvExport_SingleObject()
        {
            var id      = 1;
            var title   = "Hello World!";
            var url     = "http://hello.world.com";
            var summary = "Hello World Summary!";

            //Arrange
            var searchResult = new SearchResult()
            {
                Id = id, Url = url, Title = title, Summary = summary
            };
            var searchResults = new List <ISearchResult>()
            {
                searchResult
            };

            var expectedCsvResult = "Id,Url,Title,Summary" + winLB + "1,http://hello.world.com,Hello World!,Hello World Summary!" + winLB;

            //Act
            csvExport.AddRows <ISearchResult>(searchResults);
            var csvResult = csvExport.Export();

            //Assert
            Assert.AreEqual(csvResult, expectedCsvResult);
        }
Exemplo n.º 2
0
        /// <summary>
        /// Download the last saved search from App_Data/SearchResult.csv
        /// </summary>
        /// <returns></returns>
        public ActionResult SaveToCsv()
        {
            var lastSearchResults = GetLastSearch();

            var csvExporter = new CsvExport();

            csvExporter.AddRows <ISearchResult>(lastSearchResults);
            var resultsAsCsv = csvExporter.Export();

            return(File(new System.Text.UTF8Encoding().GetBytes(resultsAsCsv), "text/csv", "SearchResult.csv"));
        }
Exemplo n.º 3
0
        public static async void Write(List<Product> products, string path)
        {
            var csvExport = new CsvExport();
            csvExport.AddRows(products.Select(x => new
            {
                x.Model,
                x.Brand,
                x.DeviceType,
                x.AdditionalComments
            }));

            using (var streamWriter = new StreamWriter(path, false, Encoding.UTF8))
            {
                await streamWriter.WriteAsync(csvExport.Export());
                await streamWriter.FlushAsync();
            }
        }
Exemplo n.º 4
0
        public static async void Write(IEnumerable<ProductReview> reviews, string path)
        {
            var csvExport = new CsvExport();
            csvExport.AddRows(reviews.Select(x => new
            {
                x.Reviewer,
                x.ScoreMark,
                x.Recommendation,
                x.AddedOn,
                x.ConsideredAsUsefulCount,
                x.UsefulnessBaseCount,
                ProductAdventages = string.Join("; ", x.ProductAdventages.Select(productAdventage => productAdventage.Feature)),
                ProductDisadvantages = string.Join("; ", x.ProductDisadvantages.Select(productDisadvantage => productDisadvantage.Feature)),
                x.Body
            }));

            using (var streamWriter = new StreamWriter(path, false, Encoding.UTF8))
            {
                await streamWriter.WriteAsync(csvExport.Export());
                await streamWriter.FlushAsync();
            }
        }