From 552bf53caff91a3934014901471b461a74a2d68d Mon Sep 17 00:00:00 2001 From: Fabian918 <70378443+Fabian918@users.noreply.github.com> Date: Sun, 7 Apr 2024 13:38:36 +0200 Subject: [PATCH 1/2] - added hello World example --- .../.idea/.idea.CsvPortable/.idea/.gitignore | 2 + CsvPortable/CsvPortable.sln | 7 +++ CsvPortable/HelloWorld/HelloWorld.csproj | 14 ++++++ CsvPortable/HelloWorld/Program.cs | 49 +++++++++++++++++++ 4 files changed, 72 insertions(+) create mode 100644 CsvPortable/HelloWorld/HelloWorld.csproj create mode 100644 CsvPortable/HelloWorld/Program.cs diff --git a/CsvPortable/.idea/.idea.CsvPortable/.idea/.gitignore b/CsvPortable/.idea/.idea.CsvPortable/.idea/.gitignore index 495c3fc..f70c6ff 100644 --- a/CsvPortable/.idea/.idea.CsvPortable/.idea/.gitignore +++ b/CsvPortable/.idea/.idea.CsvPortable/.idea/.gitignore @@ -11,3 +11,5 @@ # Datasource local storage ignored files /dataSources/ /dataSources.local.xml +# GitHub Copilot persisted chat sessions +/copilot/chatSessions diff --git a/CsvPortable/CsvPortable.sln b/CsvPortable/CsvPortable.sln index b8e52c4..a645ce9 100644 --- a/CsvPortable/CsvPortable.sln +++ b/CsvPortable/CsvPortable.sln @@ -12,6 +12,8 @@ Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Examples", "Examples", "{47 EndProject Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "ReadAndWriteFiles", "ReadAndWriteFiles\ReadAndWriteFiles.csproj", "{A5192D06-4ECF-43FF-917E-346B167E1B51}" EndProject +Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "HelloWorld", "HelloWorld\HelloWorld.csproj", "{05B9CAF6-6822-4299-A363-229BCB004F20}" +EndProject Global GlobalSection(SolutionConfigurationPlatforms) = preSolution Debug|Any CPU = Debug|Any CPU @@ -34,9 +36,14 @@ Global {A5192D06-4ECF-43FF-917E-346B167E1B51}.Debug|Any CPU.Build.0 = Debug|Any CPU {A5192D06-4ECF-43FF-917E-346B167E1B51}.Release|Any CPU.ActiveCfg = Release|Any CPU {A5192D06-4ECF-43FF-917E-346B167E1B51}.Release|Any CPU.Build.0 = Release|Any CPU + {05B9CAF6-6822-4299-A363-229BCB004F20}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {05B9CAF6-6822-4299-A363-229BCB004F20}.Debug|Any CPU.Build.0 = Debug|Any CPU + {05B9CAF6-6822-4299-A363-229BCB004F20}.Release|Any CPU.ActiveCfg = Release|Any CPU + {05B9CAF6-6822-4299-A363-229BCB004F20}.Release|Any CPU.Build.0 = Release|Any CPU EndGlobalSection GlobalSection(NestedProjects) = preSolution {A5192D06-4ECF-43FF-917E-346B167E1B51} = {472365B1-BDE3-4247-A6FF-9CECC3B871B6} {3C778FB2-CE4F-4FAB-B85D-459A63BE9C21} = {472365B1-BDE3-4247-A6FF-9CECC3B871B6} + {05B9CAF6-6822-4299-A363-229BCB004F20} = {472365B1-BDE3-4247-A6FF-9CECC3B871B6} EndGlobalSection EndGlobal diff --git a/CsvPortable/HelloWorld/HelloWorld.csproj b/CsvPortable/HelloWorld/HelloWorld.csproj new file mode 100644 index 0000000..eb67898 --- /dev/null +++ b/CsvPortable/HelloWorld/HelloWorld.csproj @@ -0,0 +1,14 @@ + + + + Exe + net8.0 + enable + enable + + + + + + + diff --git a/CsvPortable/HelloWorld/Program.cs b/CsvPortable/HelloWorld/Program.cs new file mode 100644 index 0000000..f7aa53c --- /dev/null +++ b/CsvPortable/HelloWorld/Program.cs @@ -0,0 +1,49 @@ +// See https://aka.ms/new-console-template for more information + + +using CsvPortable.Interfaces; + +Console.WriteLine("Hello World CsvPortable!"); + +Car car = new Car() +{ + Id = 1, + Name = "Hello World CsvPortable!", + Engine = new Engine() + { + PS = 250, + Type = Engine.EngineType.Hybrid + } +}; + +// Creates the header row of the csv. +var csvHeader = ICsvPortable.ExportDefinition(); +Console.WriteLine(csvHeader); +// Console output: Id;Name;PS;Type + +// Creates a csv row with the values of the given object. +var csvValues = ICsvPortable.ExportToCsvLine(car); +Console.WriteLine(csvValues); +// Console output: "1";"Hello World CsvPortable!";"250";"Hybrid" + + +class Car +{ + public int Id { get; set; } + public string Name { get; set; } + + public Engine Engine { get; set; } +} + +class Engine +{ + public enum EngineType + { + Electric, + Hybrid, + Gasoline + } + public int PS { get; set; } + public EngineType Type { get; set; } +} + From cdee6de107a87669e54451ddfa81f4866a8a9d53 Mon Sep 17 00:00:00 2001 From: Fabian918 <70378443+Fabian918@users.noreply.github.com> Date: Sun, 7 Apr 2024 14:05:31 +0200 Subject: [PATCH 2/2] - extended documenation --- AddNuget.png | Bin 0 -> 110337 bytes README.md | 77 ++++++++++++++++++--------------------------------- 2 files changed, 27 insertions(+), 50 deletions(-) create mode 100644 AddNuget.png diff --git a/AddNuget.png b/AddNuget.png new file mode 100644 index 0000000000000000000000000000000000000000..9276e987b4360913f85c3683e37d4cc5a12c0d6c GIT binary patch literal 110337 zcmdS9by!=?wm*(Tp+H+4iqvtJ61-Sj+}#OIf(4fX1&UXY;t&c1cMDdaK=D%CtyqG) z^V>b=J?}a9-hQ9w-amiIlVmb`)}B3U%`E$@a8+e_VnSL%3=9n7S1)DMF)#=zF)%Q% z3Gjd(Z=c*>7#O!DY^9}DUr9?dsk%U|Y#qQD7%#))b?|jHx+&8Q)E`t~V5z@=2EB{J zP=8^A`Gu-g?j_dSd*)2vI-wY(BBa;w^rNqlaiIvqaqU2ocr>oD23Nn?~xdIq1e1XFgOj3(?3&C zP>`6?INTV|&11bQYT9NRKDWLJ;7InBVj#tMOt_@!&%lMhB#p5UFIxVX5d$72l#$Gp zV5S>bgM&w~_ku=QXW=!Cvets1OG+KJ;J1E^_geLauRs`fIu8b!7jmSDtBv2K$@pdw zV8HOci3bsslSEZ!4I!^)E4h+m(2YRo5%2hO%`_s8Gbp#HzHiG!1C8A{U2wjbGWKF zmD;RW&WH@dXG;6VAK7Y)D&*fhmHw)Rvapk-aSp$u@t}tJ&Qlr5BD``7V{M1eKdlti z@I=gi$UThy&;iACj*=wbEd9|%`17$8&+Chysg12?<|%w{Qwg4kzt6Z!1^-Su*0r(%k>RymPnJo}C#h;KgGMFX`pWl_o4zjI&bdq9qi@&tFZr`*-yg zXub(E-L`D^$@h)3`EG#aNl3FO(dcTn(&|}h7Jqc(caGm$zZGn=Xj6J2vbb$&R{krGxhu#W!T6<5 z78P6nwKy}EZ9CRS8it5MFX4T~^a%9Vt>Ze}B-E?nh3IKhOW58x;z@`S=g@bA2dRgu zT`~(w#A;S*xYDbCSUK;yWHwi#?-BArtXbb|GFA+RIZg~FOuX1+a%T{UHu@H0cJwAN z?Hg?w6IEs(d2II*&t#d; z=^qA7Te*VXwBFsjFVCHtmTH9Y-p_=*w6u0;e+Lgfy`PqHf{!ux3?C0K#((XF3Rc-X zJ>=%myfEFN9cT0>P#Nx}<`E#iq|Duu0x{JKavjTl)%jqL{%sSwwB%a7l4_ zlAhnidGLV$ZOr(bhK23+JmL{FRi{c+2n90CdW;XXhca`MxGG*6&-EJW%i(hzT z!`5vNdA-RTdzC6tg^Wo!*{im=-?46F5yEZt|L1L|+zCMV0^o1<<-fM!D zw_9)9-&Q(t!S2nGh07Sh1%~LiJ06=qbp|=}IAc3=?U9#9pT3=tfB50>)$wDf`r~kg zo@epz$3D1!QvO)-0rZNoo7Ix6f=~Eesv_lw$nKS2M!(2@+5cMmDiM=D3~M`~GFS*=(ZSch0�#_9YaQns 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µ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 z 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%0AMnq`>%%@%TUDZX_{ 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 literal 0 HcmV?d00001 diff --git a/README.md b/README.md index 7b57bac..5ed30ff 100644 --- a/README.md +++ b/README.md @@ -1,57 +1,34 @@ # CsvPortable Simple, open & free Csv mapper libary for C# .NET Core +## Core Features +- easy **Serialization** and **Deserialization** of C# Objects +- Objects that contain Objects are supported +- Stream support for easy Integration + ## Getting Started -```csharp -// ----- Read csv File - -// Open File Stream -await using var fileStream = File.OpenRead("./Addresses.csv"); - - -// Reading items as IEnumerable -int index = 1; -foreach (var address in ICsvPortable.FromStream
(fileStream)) -{ - logger.LogInformation( - "Address '{Index}' - '{Street}, {City}, {Country}, {ZipCode}, {Created}'", - index, - address.Street, - address.City, - address.Country, - address.ZipCode, - address.Created - ); - index++; -} - -// ----- Write csv File - -await using var writeStream = File.OpenWrite("./newAddresses.csv"); // Create File - - -List
newAddresses = new List
() -{ - new Address - { - Street = "Street 1", - City = "City 1", - Country = "Country 1", - ZipCode = 12345, - Created = DateTime.Now - }, - new Address() - { - Street = "Street 2", - City = "City 2", - Country = "Country 4", - ZipCode = 54321, - Created = new DateTime(2012, 12, 31) - } -}; - -// Write items as IEnumerable -await ICsvPortable.ToStream(newAddresses, writeStream); +### Add the Package: + +via IDE: +![alt text](AddNuget.png) + +via terminal: + +``` +dotnet add package CSVPortable +``` +manual: +- add + +```xml + + + ``` +to the `.csproj` file. + +### Code: +- [Hello World](./CsvPortable/HelloWorld/Program.cs) +- [Read & Write Files](./CsvPortable/ReadAndWriteFiles/Program.cs)