Rystem.RepositoryFramework.MigrationTools
4.1.1
See the version list below for details.
dotnet add package Rystem.RepositoryFramework.MigrationTools --version 4.1.1
NuGet\Install-Package Rystem.RepositoryFramework.MigrationTools -Version 4.1.1
<PackageReference Include="Rystem.RepositoryFramework.MigrationTools" Version="4.1.1" />
paket add Rystem.RepositoryFramework.MigrationTools --version 4.1.1
#r "nuget: Rystem.RepositoryFramework.MigrationTools, 4.1.1"
// Install Rystem.RepositoryFramework.MigrationTools as a Cake Addin #addin nuget:?package=Rystem.RepositoryFramework.MigrationTools&version=4.1.1 // Install Rystem.RepositoryFramework.MigrationTools as a Cake Tool #tool nuget:?package=Rystem.RepositoryFramework.MigrationTools&version=4.1.1
What is Rystem?
Migration Tools
You need to create a base model as a bridge for your migration. After that you can use the two repositories with repository pattern to help yourself with the migration from a old storage to a brand new storage.
Sample with in memory integration (From UnitTest)
For instance you can create a repository (where the data will be migrated) and a migration source (where the data is)
.AddRepository<MigrationUser, MigrationTo>()
.AddMigrationSource<MigrationUser, MigrationFrom>(x => x.NumberOfConcurrentInserts = 2)
Now you may use the interface in DI
IMigrationManager<MigrationUser> migrationService
and let the sorcery happen
var migrationResult = await _migrationService.MigrateAsync(x => x.Id!, true);
Sample with a State as TState and a string as TKey
.AddRepository<IperMigrationUser, string, State, IperMigrationTo>()
.AddMigrationSource<IperMigrationUser, string, State, IperMigrationFrom>(x => x.NumberOfConcurrentInserts = 2, x => x)
Now you may use the interface in DI
IMigrationManager<MigrationUser, string, State<T>> migrationService
and let the sorcery happen
var migrationResult = await _migrationService.MigrateAsync(x => x.Id!, true);
Sample with a bool as TState by default and a string as TKey
.AddRepository<IperMigrationUser, string, IperMigrationTo>()
.AddMigrationSource<IperMigrationUser, string, IperMigrationFrom>(x => x.NumberOfConcurrentInserts = 2)
Now you may use the interface in DI
IMigrationManager<MigrationUser, string> migrationService
and let the sorcery happen
var migrationResult = await _migrationService.MigrateAsync(x => x.Id!, true);
Product | Versions Compatible and additional computed target framework versions. |
---|---|
.NET | net7.0 is compatible. net7.0-android was computed. net7.0-ios was computed. net7.0-maccatalyst was computed. net7.0-macos was computed. net7.0-tvos was computed. net7.0-windows was computed. net8.0 was computed. net8.0-android was computed. net8.0-browser was computed. net8.0-ios was computed. net8.0-maccatalyst was computed. net8.0-macos was computed. net8.0-tvos was computed. net8.0-windows was computed. |
-
net7.0
- Rystem.RepositoryFramework.Abstractions (>= 4.1.1)
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 |
---|---|---|
9.0.0 | 34,986 | 11/16/2024 |
9.0.0-rc.1 | 76 | 10/18/2024 |
6.2.0 | 218,970 | 10/9/2024 |
6.1.1 | 92 | 10/9/2024 |
6.1.0 | 47,845 | 9/29/2024 |
6.0.24 | 109 | 9/11/2024 |
6.0.23 | 104 | 7/18/2024 |
6.0.21 | 112 | 6/18/2024 |
6.0.20 | 102 | 6/16/2024 |
6.0.19 | 100 | 6/14/2024 |
6.0.18 | 94 | 6/14/2024 |
6.0.17 | 98 | 6/14/2024 |
6.0.16 | 96 | 6/10/2024 |
6.0.15 | 101 | 6/9/2024 |
6.0.14 | 98 | 5/24/2024 |
6.0.13 | 94 | 5/23/2024 |
6.0.12 | 79 | 5/23/2024 |
6.0.11 | 107 | 5/20/2024 |
6.0.9 | 106 | 5/20/2024 |
6.0.7 | 105 | 5/18/2024 |
6.0.6 | 90 | 5/10/2024 |
6.0.5 | 92 | 5/10/2024 |
6.0.4 | 144 | 4/3/2024 |
6.0.3 | 159 | 3/25/2024 |
6.0.2 | 174 | 3/11/2024 |
6.0.0 | 421 | 11/21/2023 |
6.0.0-rc.6 | 99 | 10/25/2023 |
6.0.0-rc.5 | 78 | 10/25/2023 |
6.0.0-rc.4 | 72 | 10/23/2023 |
6.0.0-rc.3 | 65 | 10/19/2023 |
6.0.0-rc.2 | 73 | 10/18/2023 |
6.0.0-rc.1 | 70 | 10/16/2023 |
5.0.20 | 400 | 9/25/2023 |
5.0.19 | 404 | 9/10/2023 |
5.0.18 | 406 | 9/6/2023 |
5.0.17 | 393 | 9/6/2023 |
5.0.16 | 400 | 9/5/2023 |
5.0.15 | 402 | 9/5/2023 |
5.0.14 | 350 | 9/5/2023 |
5.0.13 | 404 | 9/1/2023 |
5.0.12 | 388 | 8/31/2023 |
5.0.11 | 346 | 8/30/2023 |
5.0.10 | 403 | 8/29/2023 |
5.0.9 | 426 | 8/24/2023 |
5.0.8 | 430 | 8/24/2023 |
5.0.7 | 415 | 8/23/2023 |
5.0.6 | 434 | 8/21/2023 |
5.0.5 | 428 | 8/21/2023 |
5.0.4 | 433 | 8/16/2023 |
5.0.3 | 514 | 8/2/2023 |
5.0.2 | 546 | 8/2/2023 |
5.0.1 | 522 | 8/1/2023 |
5.0.0 | 501 | 7/31/2023 |
4.1.26 | 527 | 7/20/2023 |
4.1.25 | 503 | 7/16/2023 |
4.1.24 | 505 | 6/13/2023 |
4.1.23 | 443 | 6/13/2023 |
4.1.22 | 502 | 5/30/2023 |
4.1.21 | 508 | 5/20/2023 |
4.1.20 | 315,541 | 4/19/2023 |
4.1.19 | 95,187 | 3/20/2023 |
4.1.18 | 570 | 3/20/2023 |
4.1.17 | 584 | 3/16/2023 |
4.1.16 | 585 | 3/16/2023 |
4.1.15 | 560 | 3/15/2023 |
4.1.14 | 1,112 | 3/9/2023 |
4.1.13 | 566 | 3/7/2023 |
4.1.12 | 594 | 2/10/2023 |
4.1.11 | 633 | 1/26/2023 |
4.1.10 | 657 | 1/22/2023 |
4.1.9 | 670 | 1/20/2023 |
4.1.8 | 681 | 1/18/2023 |
4.1.7 | 632 | 1/18/2023 |
4.1.6 | 678 | 1/17/2023 |
4.1.1 | 624 | 1/4/2023 |
4.1.0 | 669 | 1/1/2023 |
3.1.5 | 676 | 12/21/2022 |
3.1.3 | 648 | 12/12/2022 |
3.1.2 | 639 | 12/7/2022 |
3.1.1 | 659 | 12/7/2022 |
3.1.0 | 689 | 12/2/2022 |
3.0.29 | 706 | 12/1/2022 |
3.0.28 | 690 | 12/1/2022 |
3.0.27 | 705 | 11/23/2022 |
3.0.25 | 716 | 11/23/2022 |
3.0.24 | 689 | 11/18/2022 |
3.0.23 | 698 | 11/18/2022 |
3.0.22 | 705 | 11/15/2022 |
3.0.21 | 704 | 11/14/2022 |
3.0.20 | 740 | 11/13/2022 |
3.0.19 | 704 | 11/2/2022 |
3.0.18 | 728 | 11/2/2022 |
3.0.17 | 747 | 10/29/2022 |
3.0.16 | 764 | 10/29/2022 |
3.0.15 | 701 | 10/29/2022 |
3.0.14 | 737 | 10/24/2022 |
3.0.13 | 707 | 10/24/2022 |
3.0.12 | 768 | 10/17/2022 |
3.0.11 | 782 | 10/10/2022 |
3.0.10 | 772 | 10/6/2022 |
3.0.9 | 759 | 10/6/2022 |
3.0.8 | 766 | 10/6/2022 |
3.0.7 | 760 | 10/6/2022 |
3.0.6 | 771 | 10/5/2022 |
3.0.5 | 771 | 10/5/2022 |
3.0.4 | 767 | 10/5/2022 |
3.0.3 | 757 | 10/3/2022 |
3.0.2 | 754 | 9/30/2022 |
3.0.1 | 785 | 9/29/2022 |
2.0.17 | 797 | 9/29/2022 |
2.0.16 | 776 | 9/27/2022 |
2.0.15 | 807 | 9/27/2022 |
2.0.14 | 798 | 9/26/2022 |
2.0.13 | 790 | 9/26/2022 |
2.0.12 | 819 | 9/26/2022 |
2.0.11 | 810 | 9/25/2022 |
2.0.10 | 805 | 9/25/2022 |
2.0.9 | 827 | 9/22/2022 |
2.0.8 | 787 | 9/22/2022 |
2.0.6 | 788 | 9/20/2022 |
2.0.5 | 789 | 9/20/2022 |
2.0.4 | 778 | 9/20/2022 |
2.0.2 | 800 | 9/20/2022 |
2.0.1 | 877 | 9/13/2022 |
2.0.0 | 810 | 8/19/2022 |
1.1.24 | 839 | 7/30/2022 |
1.1.23 | 815 | 7/29/2022 |
1.1.22 | 810 | 7/29/2022 |
1.1.21 | 819 | 7/29/2022 |
1.1.20 | 784 | 7/29/2022 |
1.1.19 | 790 | 7/27/2022 |
1.1.17 | 839 | 7/27/2022 |
1.1.16 | 823 | 7/26/2022 |
1.1.15 | 808 | 7/25/2022 |
1.1.14 | 804 | 7/25/2022 |
1.1.13 | 838 | 7/22/2022 |
1.1.12 | 801 | 7/19/2022 |
1.1.11 | 799 | 7/19/2022 |
1.1.10 | 805 | 7/19/2022 |
1.1.9 | 824 | 7/19/2022 |
1.1.8 | 845 | 7/18/2022 |
1.1.7 | 798 | 7/18/2022 |
1.1.6 | 823 | 7/18/2022 |
1.1.5 | 843 | 7/17/2022 |
1.1.4 | 839 | 7/17/2022 |
1.1.3 | 912 | 7/17/2022 |
1.1.2 | 806 | 7/17/2022 |
1.1.0 | 835 | 7/17/2022 |
1.0.2 | 821 | 7/15/2022 |
1.0.1 | 844 | 7/15/2022 |
1.0.0 | 832 | 7/8/2022 |
0.10.7 | 838 | 7/7/2022 |
0.10.2 | 835 | 7/2/2022 |
0.10.1 | 850 | 7/1/2022 |
0.10.0 | 792 | 7/1/2022 |
0.9.10 | 822 | 6/20/2022 |
0.9.9 | 795 | 6/11/2022 |
0.9.7 | 813 | 6/9/2022 |
0.9.6 | 835 | 6/5/2022 |
0.9.5 | 807 | 6/3/2022 |
0.9.4 | 793 | 6/3/2022 |
0.9.3 | 791 | 6/3/2022 |