static void TestCsvFormatters() { var action = new Action(() => { var test01FilePath = Runtime.GetDesktopFilePath("csv-writer-test-01.csv"); var test02FilePath = Runtime.GetDesktopFilePath("csv-witer-test-02.csv"); var generatedRecords = SampleCsvRecord.CreateSampleSet(100); $"Generated {generatedRecords.Count} sample records.".Info(nameof(TestCsvFormatters)); var savedRecordCount = CsvWriter.SaveRecords(generatedRecords, test01FilePath); $"Saved {savedRecordCount} records (including header) to file: {Path.GetFileName(test01FilePath)}." .Info(nameof(TestCsvFormatters)); var loadedRecords = CsvReader.LoadRecords <SampleCsvRecord>(test01FilePath); $"Loaded {loadedRecords.Count} records from file: {Path.GetFileName(test01FilePath)}.".Info( nameof(TestCsvFormatters)); savedRecordCount = CsvWriter.SaveRecords(generatedRecords, test02FilePath); $"Saved {savedRecordCount} records (including header) to file: {Path.GetFileName(test02FilePath)}." .Info(nameof(TestCsvFormatters)); var sourceObject = loadedRecords[generatedRecords.Count / 2]; var targetObject = new SampleCopyTarget(); var copiedProperties = sourceObject.CopyPropertiesTo(targetObject); $"{nameof(Extensions.CopyPropertiesTo)} method copied {copiedProperties} properties from one object to another" .Info(nameof(TestCsvFormatters)); }); var elapsed = action.Benchmark(); $"Elapsed: {Math.Round(elapsed.TotalMilliseconds, 3)} milliseconds".Trace(); }
private static void TestJson() { var instance = new SampleCopyTarget { AlternateId = 10, CreationDate = new DateTime(2010, 1, 1), Id = 1, Score = "A" }; var payload = Json.Serialize(instance, JsonSerializerCase.CamelCase, true); payload.Info(typeof(Program)); var recover = Json.Deserialize <SampleCopyTarget>(payload, JsonSerializerCase.CamelCase); recover.Dump(typeof(Program)); var jsonText = "{\"SimpleProperty\": \"SimpleValue\", \"EmptyProperty\": \"\\/Forward-Slash\\\"\", \"EmptyArray\": [], \"EmptyObject\": {}}"; var jsonObject = Json.Deserialize(jsonText); jsonObject.Dump(typeof(Program)); jsonText = "{\"SimpleProperty\": \r\n \"SimpleValue\", \"EmptyProperty\": \" \", \"EmptyArray\": [ \r\n \r\n ], \"EmptyObject\": { } \r\n, \"NumberStringArray\": [1,2,\"hello\",4,\"666\",{ \"NestedObject\":true }] }"; jsonObject = Json.Deserialize(jsonText); jsonObject.Dump(typeof(Program)); "test".Dump(typeof(Program)); }