LiteMigrator 0.8.0
See the version list below for details.
dotnet add package LiteMigrator --version 0.8.0
NuGet\Install-Package LiteMigrator -Version 0.8.0
<PackageReference Include="LiteMigrator" Version="0.8.0" />
paket add LiteMigrator --version 0.8.0
#r "nuget: LiteMigrator, 0.8.0"
// Install LiteMigrator as a Cake Addin #addin nuget:?package=LiteMigrator&version=0.8.0 // Install LiteMigrator as a Cake Tool #tool nuget:?package=LiteMigrator&version=0.8.0
SQLite Lite Migrator for cross-platform .NET
LiteMigrator is a tiny cross-platform SQLite migration framework for .NET cross-platform applications using (.NET Standard). This library was built for use with .NET MAUI 🐒, Avalonia, and Uno projects. So it needs to be quick, simple, and reliable when managing databases.
LiteMigrator takes a "migrate-up" approach. In most app deployments, we usually move forward and rarely downgrade (consider app stores). This helps keep the library small and nimble.
Breaking Change from 0.6.x to now:
Namespace changed from
Xeno.LiteMigrator
toLiteMigrator
Sponsored by Xeno Innovations and Suess Labs, this project was made with nerd-love.
Supported Platforms
Check out the sample project's source code LiteMigrator.Sample
Platform | Status |
---|---|
Windows | Yes |
Linux | Yes |
Android | Yes |
iOS | Yes |
Contribute today and get your platform supported 👍
How to use it
Get LiteMigrator on NuGet today!
Getting Started
Detailed instructions can be found on the Using LiteMigrator wiki page.
- Add LiteMigrator project to your solution
- Create a folder in your solution to hold the scripts
- Add SQL files as Embedded Resources
- You must use the naming convention, "YYYYMMDDhhmm-FileName.sql"
- Wire-up the controller
Use Case 1
var scriptNamespace = "MyProject.Namespace.Scripts";
using (var migrator = new LiteMigration(
"c:\\path\\to\\sqlite.db3"
Assembly.GetExecutingAssembly(),
scriptNamespace))
{
bool isSuccessful = await migrator.MigrateUpAsync();
}
Use Case 2 - Class Constructor
public async Task InstallMigrationsAsync()
{
// Your EXE/DLL with the scripts
var resourceAssm = Assembly.GetExecutingAssembly();
var dbPath = @"C:\TEMP\MyDatabase.db3";
var migsNamespace = "MyProjNamespace.Scripts";
var liteMig = new LiteMigration(dbPath, resourceAssm, migsNamespace);
bool = success = await liteMig.MigrateUpAsync();
// Required after v0.6
liteMig.Dispose();
}
How to Contribute
Give it a test drive and support making LiteMigrator better 😃
- Fork on GitHub
- Create a branch
- Code (and add tests)
- Create a Pull Request (PR) on GitHub
- Target the
develop
branch and we'll get it merged up tomaster
- Target the
master
branch for hotfixes
- Target the
- Get the PR merged
- Welcome to our contributors' list!
This project could use your assistance to crush any limitations.
Please visit the Known Limitations wiki page
Product | Versions Compatible and additional computed target framework versions. |
---|---|
.NET | net5.0 was computed. net5.0-windows was computed. net6.0 was computed. 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. |
.NET Core | netcoreapp2.0 was computed. netcoreapp2.1 was computed. netcoreapp2.2 was computed. netcoreapp3.0 was computed. netcoreapp3.1 was computed. |
.NET Standard | netstandard2.0 is compatible. netstandard2.1 was computed. |
.NET Framework | net461 was computed. net462 was computed. net463 was computed. net47 was computed. net471 was computed. net472 was computed. net48 was computed. net481 was computed. |
MonoAndroid | monoandroid was computed. |
MonoMac | monomac was computed. |
MonoTouch | monotouch was computed. |
Tizen | tizen40 was computed. tizen60 was computed. |
Xamarin.iOS | xamarinios was computed. |
Xamarin.Mac | xamarinmac was computed. |
Xamarin.TVOS | xamarintvos was computed. |
Xamarin.WatchOS | xamarinwatchos was computed. |
-
.NETStandard 2.0
- sqlite-net-pcl (>= 1.9.172)
NuGet packages
This package is not used by any NuGet packages.
GitHub repositories
This package is not used by any popular GitHub repositories.
Sqlite lite migration utility