Rystem.RepositoryFramework.MigrationTools
1.0.0
See the version list below for details.
dotnet add package Rystem.RepositoryFramework.MigrationTools --version 1.0.0
NuGet\Install-Package Rystem.RepositoryFramework.MigrationTools -Version 1.0.0
<PackageReference Include="Rystem.RepositoryFramework.MigrationTools" Version="1.0.0" />
paket add Rystem.RepositoryFramework.MigrationTools --version 1.0.0
#r "nuget: Rystem.RepositoryFramework.MigrationTools, 1.0.0"
// Install Rystem.RepositoryFramework.MigrationTools as a Cake Addin #addin nuget:?package=Rystem.RepositoryFramework.MigrationTools&version=1.0.0 // Install Rystem.RepositoryFramework.MigrationTools as a Cake Tool #tool nuget:?package=Rystem.RepositoryFramework.MigrationTools&version=1.0.0
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 bool as TState and a string as TKey
.AddRepository<IperMigrationUser, string, bool, IperMigrationTo>()
.AddMigrationSource<IperMigrationUser, string, bool, IperMigrationFrom>(x => x.NumberOfConcurrentInserts = 2, x => x)
Now you may use the interface in DI
IMigrationManager<MigrationUser, string, bool> 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 | net6.0 is compatible. net6.0-android was computed. net6.0-ios was computed. net6.0-maccatalyst was computed. net6.0-macos was computed. net6.0-tvos was computed. net6.0-windows was computed. net7.0 was computed. 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. |
-
net6.0
- Rystem.RepositoryFramework.Abstractions (>= 1.0.0)
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 | 56,973 | 11/16/2024 |
9.0.0-rc.1 | 76 | 10/18/2024 |
6.2.0 | 218,972 | 10/9/2024 |
6.1.1 | 94 | 10/9/2024 |
6.1.0 | 47,847 | 9/29/2024 |
6.0.24 | 111 | 9/11/2024 |
6.0.23 | 106 | 7/18/2024 |
6.0.21 | 114 | 6/18/2024 |
6.0.20 | 104 | 6/16/2024 |
6.0.19 | 102 | 6/14/2024 |
6.0.18 | 96 | 6/14/2024 |
6.0.17 | 100 | 6/14/2024 |
6.0.16 | 98 | 6/10/2024 |
6.0.15 | 103 | 6/9/2024 |
6.0.14 | 100 | 5/24/2024 |
6.0.13 | 96 | 5/23/2024 |
6.0.12 | 81 | 5/23/2024 |
6.0.11 | 109 | 5/20/2024 |
6.0.9 | 108 | 5/20/2024 |
6.0.7 | 107 | 5/18/2024 |
6.0.6 | 92 | 5/10/2024 |
6.0.5 | 94 | 5/10/2024 |
6.0.4 | 146 | 4/3/2024 |
6.0.3 | 161 | 3/25/2024 |
6.0.2 | 176 | 3/11/2024 |
6.0.0 | 423 | 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 | 402 | 9/25/2023 |
5.0.19 | 406 | 9/10/2023 |
5.0.18 | 408 | 9/6/2023 |
5.0.17 | 395 | 9/6/2023 |
5.0.16 | 402 | 9/5/2023 |
5.0.15 | 404 | 9/5/2023 |
5.0.14 | 352 | 9/5/2023 |
5.0.13 | 406 | 9/1/2023 |
5.0.12 | 390 | 8/31/2023 |
5.0.11 | 348 | 8/30/2023 |
5.0.10 | 405 | 8/29/2023 |
5.0.9 | 428 | 8/24/2023 |
5.0.8 | 432 | 8/24/2023 |
5.0.7 | 417 | 8/23/2023 |
5.0.6 | 436 | 8/21/2023 |
5.0.5 | 430 | 8/21/2023 |
5.0.4 | 435 | 8/16/2023 |
5.0.3 | 516 | 8/2/2023 |
5.0.2 | 548 | 8/2/2023 |
5.0.1 | 524 | 8/1/2023 |
5.0.0 | 503 | 7/31/2023 |
4.1.26 | 529 | 7/20/2023 |
4.1.25 | 505 | 7/16/2023 |
4.1.24 | 507 | 6/13/2023 |
4.1.23 | 445 | 6/13/2023 |
4.1.22 | 504 | 5/30/2023 |
4.1.21 | 510 | 5/20/2023 |
4.1.20 | 315,543 | 4/19/2023 |
4.1.19 | 95,189 | 3/20/2023 |
4.1.18 | 572 | 3/20/2023 |
4.1.17 | 586 | 3/16/2023 |
4.1.16 | 587 | 3/16/2023 |
4.1.15 | 562 | 3/15/2023 |
4.1.14 | 1,114 | 3/9/2023 |
4.1.13 | 568 | 3/7/2023 |
4.1.12 | 596 | 2/10/2023 |
4.1.11 | 635 | 1/26/2023 |
4.1.10 | 659 | 1/22/2023 |
4.1.9 | 672 | 1/20/2023 |
4.1.8 | 683 | 1/18/2023 |
4.1.7 | 634 | 1/18/2023 |
4.1.6 | 680 | 1/17/2023 |
4.1.1 | 626 | 1/4/2023 |
4.1.0 | 671 | 1/1/2023 |
3.1.5 | 678 | 12/21/2022 |
3.1.3 | 650 | 12/12/2022 |
3.1.2 | 641 | 12/7/2022 |
3.1.1 | 661 | 12/7/2022 |
3.1.0 | 691 | 12/2/2022 |
3.0.29 | 708 | 12/1/2022 |
3.0.28 | 692 | 12/1/2022 |
3.0.27 | 707 | 11/23/2022 |
3.0.25 | 718 | 11/23/2022 |
3.0.24 | 691 | 11/18/2022 |
3.0.23 | 700 | 11/18/2022 |
3.0.22 | 707 | 11/15/2022 |
3.0.21 | 706 | 11/14/2022 |
3.0.20 | 742 | 11/13/2022 |
3.0.19 | 706 | 11/2/2022 |
3.0.18 | 730 | 11/2/2022 |
3.0.17 | 749 | 10/29/2022 |
3.0.16 | 766 | 10/29/2022 |
3.0.15 | 703 | 10/29/2022 |
3.0.14 | 739 | 10/24/2022 |
3.0.13 | 709 | 10/24/2022 |
3.0.12 | 770 | 10/17/2022 |
3.0.11 | 784 | 10/10/2022 |
3.0.10 | 774 | 10/6/2022 |
3.0.9 | 761 | 10/6/2022 |
3.0.8 | 768 | 10/6/2022 |
3.0.7 | 762 | 10/6/2022 |
3.0.6 | 773 | 10/5/2022 |
3.0.5 | 773 | 10/5/2022 |
3.0.4 | 769 | 10/5/2022 |
3.0.3 | 759 | 10/3/2022 |
3.0.2 | 756 | 9/30/2022 |
3.0.1 | 787 | 9/29/2022 |
2.0.17 | 799 | 9/29/2022 |
2.0.16 | 778 | 9/27/2022 |
2.0.15 | 809 | 9/27/2022 |
2.0.14 | 800 | 9/26/2022 |
2.0.13 | 792 | 9/26/2022 |
2.0.12 | 821 | 9/26/2022 |
2.0.11 | 812 | 9/25/2022 |
2.0.10 | 807 | 9/25/2022 |
2.0.9 | 829 | 9/22/2022 |
2.0.8 | 789 | 9/22/2022 |
2.0.6 | 790 | 9/20/2022 |
2.0.5 | 791 | 9/20/2022 |
2.0.4 | 780 | 9/20/2022 |
2.0.2 | 802 | 9/20/2022 |
2.0.1 | 879 | 9/13/2022 |
2.0.0 | 812 | 8/19/2022 |
1.1.24 | 841 | 7/30/2022 |
1.1.23 | 817 | 7/29/2022 |
1.1.22 | 812 | 7/29/2022 |
1.1.21 | 821 | 7/29/2022 |
1.1.20 | 786 | 7/29/2022 |
1.1.19 | 792 | 7/27/2022 |
1.1.17 | 841 | 7/27/2022 |
1.1.16 | 825 | 7/26/2022 |
1.1.15 | 810 | 7/25/2022 |
1.1.14 | 806 | 7/25/2022 |
1.1.13 | 840 | 7/22/2022 |
1.1.12 | 803 | 7/19/2022 |
1.1.11 | 818 | 7/19/2022 |
1.1.10 | 807 | 7/19/2022 |
1.1.9 | 826 | 7/19/2022 |
1.1.8 | 847 | 7/18/2022 |
1.1.7 | 800 | 7/18/2022 |
1.1.6 | 825 | 7/18/2022 |
1.1.5 | 863 | 7/17/2022 |
1.1.4 | 841 | 7/17/2022 |
1.1.3 | 914 | 7/17/2022 |
1.1.2 | 808 | 7/17/2022 |
1.1.0 | 837 | 7/17/2022 |
1.0.2 | 823 | 7/15/2022 |
1.0.1 | 846 | 7/15/2022 |
1.0.0 | 834 | 7/8/2022 |
0.10.7 | 840 | 7/7/2022 |
0.10.2 | 837 | 7/2/2022 |
0.10.1 | 852 | 7/1/2022 |
0.10.0 | 794 | 7/1/2022 |
0.9.10 | 824 | 6/20/2022 |
0.9.9 | 797 | 6/11/2022 |
0.9.7 | 815 | 6/9/2022 |
0.9.6 | 837 | 6/5/2022 |
0.9.5 | 809 | 6/3/2022 |
0.9.4 | 795 | 6/3/2022 |
0.9.3 | 793 | 6/3/2022 |