summaryrefslogtreecommitdiff
path: root/ThirdParty/CsvHelper-master/src/CsvHelper.Website/input/examples/configuration/class-maps/optional-maps/index.md
diff options
context:
space:
mode:
authorchai <215380520@qq.com>2023-05-12 09:24:40 +0800
committerchai <215380520@qq.com>2023-05-12 09:24:40 +0800
commit2a1cd4fda8a4a8e649910d16b4dfa1ce7ae63543 (patch)
treea471fafed72e80b4ac3ac3002e06c34220dd6058 /ThirdParty/CsvHelper-master/src/CsvHelper.Website/input/examples/configuration/class-maps/optional-maps/index.md
parentb8a694746562b37dc8dc5b8b5aec8612bb0964fc (diff)
*misc
Diffstat (limited to 'ThirdParty/CsvHelper-master/src/CsvHelper.Website/input/examples/configuration/class-maps/optional-maps/index.md')
-rw-r--r--ThirdParty/CsvHelper-master/src/CsvHelper.Website/input/examples/configuration/class-maps/optional-maps/index.md42
1 files changed, 42 insertions, 0 deletions
diff --git a/ThirdParty/CsvHelper-master/src/CsvHelper.Website/input/examples/configuration/class-maps/optional-maps/index.md b/ThirdParty/CsvHelper-master/src/CsvHelper.Website/input/examples/configuration/class-maps/optional-maps/index.md
new file mode 100644
index 0000000..0a4c065
--- /dev/null
+++ b/ThirdParty/CsvHelper-master/src/CsvHelper.Website/input/examples/configuration/class-maps/optional-maps/index.md
@@ -0,0 +1,42 @@
+# Optional Maps
+
+If you have data that may or may not have a header, you can make the mapping optional.
+
+###### Data
+
+```
+Id,Name
+1,one
+```
+
+###### Example
+
+```cs
+void Main()
+{
+ using (var reader = new StreamReader("path\\to\\file.csv"))
+ using (var csv = new CsvReader(reader, CultureInfo.InvariantCulture))
+ {
+ csv.Context.RegisterClassMap<FooMap>();
+ csv.GetRecords<Foo>().ToList().Dump();
+ }
+}
+
+public class Foo
+{
+ public int Id { get; set; }
+ public string Name { get; set; }
+ public DateTimeOffset? Date { get; set; }
+}
+
+public class FooMap : ClassMap<Foo>
+{
+ public FooMap()
+ {
+ Map(m => m.Id);
+ Map(m => m.Name);
+ Map(m => m.Date).Optional();
+ }
+}
+```
+