https://github.com/usausa/data-toolkit
🐱Data helper library.
https://github.com/usausa/data-toolkit
bulk-copy bulk-loader bulkcopy bulkloader
Last synced: 4 days ago
JSON representation
🐱Data helper library.
- Host: GitHub
- URL: https://github.com/usausa/data-toolkit
- Owner: usausa
- License: mit
- Created: 2024-08-07T02:25:35.000Z (10 months ago)
- Default Branch: main
- Last Pushed: 2025-04-16T00:51:39.000Z (about 1 month ago)
- Last Synced: 2025-04-16T02:03:09.730Z (about 1 month ago)
- Topics: bulk-copy, bulk-loader, bulkcopy, bulkloader
- Language: C#
- Homepage:
- Size: 107 KB
- Stars: 0
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# Mofucat.DataToolkit
[](https://www.nuget.org/packages/Mofucat.DataToolkit)
## ObjectDataReader
```csharp
// Source
var list = new List
[
new() { Id = 1, Value = "Name-1" },
new() { Id = 2 }
];// ObjectDataReader
using var reader = new ObjectDataReader(list);// BulkCopy
await using var con = new SqlConnection(ConnectionString);
await con.OpenAsync();
using var loader = new SqlBulkCopy(con);
loader.DestinationTableName = "Data";
await loader.WriteToServerAsync(reader);
```## MappingDataReader
```csharp
// Source
var csvReader = ...// MappingReader
var option = new MappingDataReaderOption();
option.AddColumn("Col1");
option.AddColumn("Col3");
option.AddColumn("Col5", Boolean.Parse);
using var reader = new MappingDataReader(option, csvReader);// BulkCopy
await using var con = new SqlConnection(ConnectionString);
await con.OpenAsync();
using var loader = new SqlBulkCopy(con);
loader.DestinationTableName = "Data";
await loader.WriteToServerAsync(reader);
```# Mofucat.DataToolkit.Avro
[](https://www.nuget.org/packages/Mofucat.DataToolkit.Avro)
## AvroDataReader
```csharp
// AvroDataReader
using var reader = new AvroDataReader(File.OpenRead("data.avro"));// BulkCopy
await using var con = new SqlConnection(ConnectionString);
await con.OpenAsync();
using var loader = new SqlBulkCopy(con);
loader.DestinationTableName = "Data";
await loader.WriteToServerAsync(reader);
```## AvroDataExporter
```csharp
await using var con = new SqlConnection(ConnectionString);// AvroDataExporter
var exporter = new AvroDataExporter(con)
{
Name = "Data",
Codec = new SnappyCodec()
};await exporter.ExportAsync(File.OpenWrite($"data-{id}.avro"), $"SELECT * FROM Data WHERE Id = {id}");
```