DotNetBrightener.DataAccess.DataMigration 2025.0.6-preview-319

This is a prerelease version of DotNetBrightener.DataAccess.DataMigration.
There is a newer prerelease version of this package available.
See the version list below for details.
dotnet add package DotNetBrightener.DataAccess.DataMigration --version 2025.0.6-preview-319
                    
NuGet\Install-Package DotNetBrightener.DataAccess.DataMigration -Version 2025.0.6-preview-319
                    
This command is intended to be used within the Package Manager Console in Visual Studio, as it uses the NuGet module's version of Install-Package.
<PackageReference Include="DotNetBrightener.DataAccess.DataMigration" Version="2025.0.6-preview-319" />
                    
For projects that support PackageReference, copy this XML node into the project file to reference the package.
<PackageVersion Include="DotNetBrightener.DataAccess.DataMigration" Version="2025.0.6-preview-319" />
                    
Directory.Packages.props
<PackageReference Include="DotNetBrightener.DataAccess.DataMigration" />
                    
Project file
For projects that support Central Package Management (CPM), copy this XML node into the solution Directory.Packages.props file to version the package.
paket add DotNetBrightener.DataAccess.DataMigration --version 2025.0.6-preview-319
                    
#r "nuget: DotNetBrightener.DataAccess.DataMigration, 2025.0.6-preview-319"
                    
#r directive can be used in F# Interactive and Polyglot Notebooks. Copy this into the interactive tool or source code of the script to reference the package.
#:package DotNetBrightener.DataAccess.DataMigration@2025.0.6-preview-319
                    
#:package directive can be used in C# file-based apps starting in .NET 10 preview 4. Copy this into a .cs file before any lines of code to reference the package.
#addin nuget:?package=DotNetBrightener.DataAccess.DataMigration&version=2025.0.6-preview-319&prerelease
                    
Install as a Cake Addin
#tool nuget:?package=DotNetBrightener.DataAccess.DataMigration&version=2025.0.6-preview-319&prerelease
                    
Install as a Cake Tool

Data Migration Library for .NET Core Applications

© 2024 DotNet Brightener

Versions

Package Version
DotNetBrightener.DataAccess.DataMigration NuGet Version
DotNetBrightener.DataAccess.DataMigration.Mssql NuGet Version
DotNetBrightener.DataAccess.DataMigration.PostgreSql NuGet Version
dotnet-dnb-datamigration NuGet Version

Overview

Data Migration Library is a simple library to help you manage your data migration in your .NET Core application. It provides a simple way to define your migration classes and run them in your application.

Not all applications can use DACPAC for managing database schema and data changes. Especially DACPAC does not work with other databases such as MySQL, PostgreSQL, etc. This library is designed to help you manage your data migration in your application.

Installation

Install using Package Reference

dotnet add [YOUR_PROJECT_NAME] package DotNetBrightener.DataAccess.DataMigration

If you need to data migration with SQL Server, install the following package: DotNetBrightener.DataAccess.DataMigration.Mssql

dotnet add [YOUR_PROJECT_NAME] package DotNetBrightener.DataAccess.DataMigration.Mssql

For PostgreSQL, install the following package: DotNetBrightener.DataAccess.DataMigration.PostgreSql

dotnet add [YOUR_PROJECT_NAME] package DotNetBrightener.DataAccess.DataMigration.PostgreSql

Usage

Register to Service Collection
// var _connectionString = "<your_connection_string>";

// If you use SQL Server
services.EnableDataMigrations()
        .UseSqlServer(_connectionString);

// If you use PostgreSQL
services.EnableDataMigrations()
        .UseNpgsql(_connectionString);

// if you want to auto detect all migration classes
services.AutoScanDataMigrators();

// if you want to manually register migration classes
services.AddDataMigrator<MyMigration>();

Define your migration classes

using DotNetBrightener.DataAccess.DataMigration;

[DataMigration("<your_migration_id>")]
public class MyMigration : IDataMigration
{
    // You can use Dependency Injection for injecting your services
    private readonly IMyService _myService;

    public MyMigration(IMyService myService)
    {
        _myService = myService;
    }

    public async Task MigrateData()
    {
        // Your migration code here
        await _myService.DoSomethingToMigrateData();
    }
}

Roadmap

  • Initial Release
  • Add Support for SQL Server
  • Add Support for PostgreSQL
  • CLI tool for creating migration class

CLI Tool

You can now install the cli tool from Nuget: dotnet-dnb-datamigration

Product Compatible and additional computed target framework versions.
.NET net9.0 is compatible.  net9.0-android was computed.  net9.0-browser was computed.  net9.0-ios was computed.  net9.0-maccatalyst was computed.  net9.0-macos was computed.  net9.0-tvos was computed.  net9.0-windows was computed.  net10.0 was computed.  net10.0-android was computed.  net10.0-browser was computed.  net10.0-ios was computed.  net10.0-maccatalyst was computed.  net10.0-macos was computed.  net10.0-tvos was computed.  net10.0-windows was computed. 
Compatible target framework(s)
Included target framework(s) (in package)
Learn more about Target Frameworks and .NET Standard.

NuGet packages (2)

Showing the top 2 NuGet packages that depend on DotNetBrightener.DataAccess.DataMigration:

Package Downloads
DotNetBrightener.DataAccess.DataMigration.Mssql

Package Description

DotNetBrightener.DataAccess.DataMigration.PostgreSql

Package Description

GitHub repositories

This package is not used by any popular GitHub repositories.

Version Downloads Last Updated
2025.0.6-preview-333 58 7/27/2025
2025.0.6-preview-332 434 7/24/2025
2025.0.6-preview-331 436 7/24/2025
2025.0.6-preview-328 435 7/24/2025
2025.0.6-preview-327 272 7/21/2025
2025.0.6-preview-326 272 7/21/2025
2025.0.6-preview-325 184 7/20/2025
2025.0.6-preview-324 180 7/20/2025
2025.0.6-preview-322 183 7/20/2025
2025.0.6-preview-321 187 7/19/2025
2025.0.6-preview-320 187 7/19/2025
2025.0.6-preview-319 113 7/17/2025
2025.0.6-preview-317 110 7/17/2025
2025.0.6-preview-316 112 7/17/2025
2025.0.6-preview-315 115 7/17/2025
2025.0.6-preview-314 116 7/17/2025
2025.0.6-preview-313 120 7/17/2025
2025.0.6-preview-312 122 7/16/2025
2025.0.5 144 7/10/2025
2025.0.5-preview-307 74 7/5/2025
2025.0.4 72 7/5/2025
2025.0.4-preview-305 79 7/4/2025
2025.0.4-preview-304 140 7/1/2025
2025.0.4-preview-299 120 5/31/2025
2025.0.4-preview-298 101 5/30/2025
2025.0.4-preview-296 137 5/30/2025
2025.0.4-preview-295 149 5/29/2025
2025.0.4-preview-293 149 5/26/2025
2025.0.4-preview-292 148 5/26/2025
2025.0.3 133 2/10/2025
2025.0.3-preview-288 119 2/10/2025
2025.0.2 132 1/21/2025
2025.0.2-preview-278 101 1/21/2025
2025.0.2-preview-277 111 12/16/2024
2025.0.1-rc-243301701 378 11/25/2024
2024.0.14.6 121 11/25/2024
2024.0.14.6-rc-243031001 196 10/29/2024
2024.0.14.6-rc-243030701 116 10/29/2024
2024.0.14.6-rc-242840501 107 10/10/2024
2024.0.14.6-rc-242820305 102 10/8/2024
2024.0.14.6-rc-242771401 198 10/3/2024
2024.0.14.6-rc-242770501 106 10/3/2024
2024.0.14.6-rc-242770201 112 10/3/2024
2024.0.14.6-rc-242761801 106 10/2/2024
2024.0.14.6-rc-242761601 116 10/2/2024
2024.0.14.6-rc-242761501 99 10/2/2024
2024.0.14.6-rc-242761401 113 10/2/2024
2024.0.14.6-rc-242760701 127 10/2/2024
2024.0.14.6-rc-242751002 109 10/1/2024
2024.0.14.6-rc-242750901 123 10/1/2024
2024.0.14.6-rc-242750502 105 10/1/2024
2024.0.14.6-rc-242750201 114 10/1/2024
2024.0.14.6-rc-242741501 102 9/30/2024
2024.0.14.6-rc-242730701 132 9/29/2024
2024.0.14.6-preview-2730501 96 9/29/2024
2024.0.14.6-preview-2701501 140 9/26/2024
2024.0.14.6-preview-2620901 164 9/18/2024
2024.0.14.6-preview-2570701 104 9/13/2024
2024.0.14.6-preview-2510703 174 9/7/2024
2024.0.14.6-preview-2480501 135 9/4/2024
2024.0.14.6-preview-2430401 146 8/30/2024
2024.0.14.6-preview-242730701 105 9/29/2024
2024.0.14.6-preview-2421703 113 8/29/2024
2024.0.14.6-preview-2421701 113 8/29/2024
2024.0.14.6-preview-2420901 110 8/29/2024
2024.0.14.6-preview-2390101 121 8/26/2024
2024.0.14.6-preview-2381603 137 8/25/2024
2024.0.14.6-preview-2341601 159 8/21/2024
2024.0.14.6-preview-2321602 155 8/20/2024
2024.0.14.6-preview-2190801 177 8/6/2024
2024.0.14.6-preview-2041501 113 7/22/2024
2024.0.14.6-preview-1920603 162 7/10/2024
2024.0.14.6-preview-1920301 137 7/10/2024
2024.0.14.6-preview-1911302 119 7/9/2024
2024.0.14.6-preview-1901001 128 7/8/2024
2024.0.14.6-preview-1900901 113 7/8/2024
2024.0.14.6-preview-1900801 116 7/8/2024
2024.0.14.6-preview-1860304 115 7/4/2024
2024.0.14.5 179 7/1/2024
2024.0.14.5-preview-1811601 126 6/29/2024
2024.0.14.5-preview-1810501 138 6/29/2024
2024.0.14.5-preview-180132 143 6/28/2024
2024.0.14.5-preview-180131 131 6/28/2024
2024.0.14.5-preview-180121 114 6/28/2024
2024.0.14.4 142 6/27/2024
2024.0.14.4-preview-8 124 6/27/2024
2024.0.14.4-preview-7 126 6/27/2024
2024.0.14.3 140 6/21/2024
2024.0.14.1 138 6/6/2024
2024.0.14.1-preview 118 6/6/2024
2024.0.14-preview-1 116 6/6/2024
2024.0.13.8-preview 119 6/6/2024
2024.0.13.1-preview-0146 117 6/6/2024
2024.0.13-preview-1 110 6/6/2024
2024.0.12.15803-preview-03 124 6/6/2024
2024.0.12.15608 140 6/4/2024
2024.0.12.15515 192 6/3/2024
2024.0.12.15220 133 5/31/2024
2024.0.12.15220-alpha31-240... 100 5/31/2024
2024.0.12.14911 162 5/28/2024
2024.0.12.14910-alpha28-240... 116 5/28/2024
2024.0.12.14823 140 5/27/2024
2024.0.12.14522-alpha7-2405... 130 5/24/2024
2024.0.12.14514-alpha6-2405... 122 5/24/2024
2024.0.12.14511 155 5/24/2024
2024.0.12.14314 171 5/22/2024
2024.0.12.14114 177 5/20/2024
2024.0.12.12815 176 5/7/2024
2024.0.12.12814 138 5/7/2024
2024.0.12.12721 157 5/6/2024
2024.0.12.12702 145 5/5/2024
2024.0.12.12622 177 5/5/2024
2024.0.12.12514 154 5/4/2024
2024.0.12.12512 151 5/4/2024
2024.0.12.12510 153 5/4/2024
2024.0.12.12420 119 5/3/2024
2024.0.12.12319 114 5/2/2024
2024.0.12.12319-rc-2405021801 90 5/2/2024
2024.0.12.12318 108 5/2/2024