SqlServerBulkCopyExtensions 0.0.1

Install-Package SqlServerBulkCopyExtensions -Version 0.0.1
dotnet add package SqlServerBulkCopyExtensions --version 0.0.1
<PackageReference Include="SqlServerBulkCopyExtensions" Version="0.0.1" />
For projects that support PackageReference, copy this XML node into the project file to reference the package.
paket add SqlServerBulkCopyExtensions --version 0.0.1
The NuGet Team does not provide support for this client. Please contact its maintainers for support.
#r "nuget: SqlServerBulkCopyExtensions, 0.0.1"
#r directive can be used in F# Interactive, C# scripting and .NET Interactive. Copy this into the interactive tool or source code of the script to reference the package.
// Install SqlServerBulkCopyExtensions as a Cake Addin
#addin nuget:?package=SqlServerBulkCopyExtensions&version=0.0.1

// Install SqlServerBulkCopyExtensions as a Cake Tool
#tool nuget:?package=SqlServerBulkCopyExtensions&version=0.0.1
The NuGet Team does not provide support for this client. Please contact its maintainers for support.

SqlServerBulkCopyExtensions

This class extends the standard behavior of SqlBulkCopy class allowing automatic retrieval of the indetity value of inserted data

Sample usage

using SqlServerBulkCopyExtensions;
using System;
using System.Data;
using System.Threading.Tasks;

namespace ConsoleApp1
{
    class Program
    {
        private class MyDataEntity
        {
            public int Id { get; set; }
            public int Quantity { get; set; }
            public string Name { get; set; }
        }

        static void Main(string[] args)
        {
            MainAsync().Wait();
        }

        static async Task MainAsync()
        {
            var dt = new DataTable(nameof(MyDataEntity));
            dt.Columns.Add(nameof(MyDataEntity.Id), typeof(int));
            dt.Columns.Add(nameof(MyDataEntity.Quantity), typeof(int));
            dt.Columns.Add(nameof(MyDataEntity.Name), typeof(string));

            for (int i = 0; i < 100; i++)
            {
                var newRow = dt.NewRow();
                newRow[nameof(MyDataEntity.Quantity)] = i;
                newRow[nameof(MyDataEntity.Name)] = "Name " + i;
                dt.Rows.Add(newRow);
            }


            using (var sqlBulk = new SqlBulkCopyExtended("YOUR CONN STRING"))
            {
                sqlBulk.IdentityColumnName = nameof(MyDataEntity.Id);
                sqlBulk.DestinationTableName = nameof(MyDataEntity);
                await sqlBulk.WriteToServerAsync(dt);
            }

            foreach (DataRow row in dt.Rows)
            {
                Console.WriteLine("Added identity value for row with name " + row["Name"].ToString() + " is " + row["Id"].ToString());
            }
        }
    }
}

NuGet packages

This package is not used by any NuGet packages.

GitHub repositories

This package is not used by any popular GitHub repositories.

Version Downloads Last updated
0.0.1 218 3/5/2020