Beispiel #1
0
        /// <summary>
        /// Creates the species observation grid as a comma separated file (CSV) and saves it on the server.
        /// </summary>
        /// <param name="userContext">The user context.</param>
        /// <param name="data">The data.</param>
        /// <returns>The filename.</returns>
        public static string CreateSpeciesObservationGridAsCsvAndStoreOnServer(IUserContext userContext, SpeciesObservationGridResult data)
        {
            var speciesObservationGridCsv = new SpeciesObservationGridCsv();
            var path             = "~/Temp/Export/";
            var filename         = FileSystemManager.CreateRandomFilenameWithPrefix("data", ".csv");
            var absoluteFilePath = FileSystemManager.GetAbsoluteFilePath(path, filename);
            var taxaName         = ((TaxaSettingSummary)MySettingsSummaryItemManager.GetItem(MySettingsSummaryItemIdentifier.FilterTaxa)).GetShortDescription();

            FileSystemManager.EnsureFolderExists(path);
            speciesObservationGridCsv.WriteDataToFile(absoluteFilePath, data, new CoordinateSystem(CoordinateSystemId.WGS84), taxaName);
            return(filename);
        }
Beispiel #2
0
        public void WriteData_DataWithTwoCellResults_DataIsWrittenCsvFormatted()
        {
            SpeciesObservationGridCsv    speciesObservationGridCsv = new SpeciesObservationGridCsv();
            SpeciesObservationGridResult data = CreateSpeciesObservationGridResultSampleData();
            CoordinateSystem             toCoordinateSystem = new CoordinateSystem(CoordinateSystemId.WGS84);
            const string taxaName = "All taxa";

            using (MemoryStream memoryStream = new MemoryStream())
            {
                speciesObservationGridCsv.WriteDataToStream(memoryStream, data, toCoordinateSystem, taxaName);

                string actual = Encoding.UTF8.GetString(memoryStream.ToArray());

                string expectedResult =
                    @"""occurrenceID"",""nameComplete"",""decimalLatitude"",""decimalLongitude""
""Grid Cell 1"",""All taxa"",""67.4331616673203"",""21.665551487154""
""Grid Cell 2"",""All taxa"",""63.6149937978252"",""16.5126895276083""
";
                Assert.AreEqual(expectedResult, RemoveBOM(actual));
            }
        }