MSQLite.Wrapper.Framework 1.0.15

dotnet add package MSQLite.Wrapper.Framework --version 1.0.15
                    
NuGet\Install-Package MSQLite.Wrapper.Framework -Version 1.0.15
                    
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="MSQLite.Wrapper.Framework" Version="1.0.15" />
                    
For projects that support PackageReference, copy this XML node into the project file to reference the package.
<PackageVersion Include="MSQLite.Wrapper.Framework" Version="1.0.15" />
                    
Directory.Packages.props
<PackageReference Include="MSQLite.Wrapper.Framework" />
                    
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 MSQLite.Wrapper.Framework --version 1.0.15
                    
#r "nuget: MSQLite.Wrapper.Framework, 1.0.15"
                    
#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 MSQLite.Wrapper.Framework@1.0.15
                    
#: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=MSQLite.Wrapper.Framework&version=1.0.15
                    
Install as a Cake Addin
#tool nuget:?package=MSQLite.Wrapper.Framework&version=1.0.15
                    
Install as a Cake Tool

MSQLite.Wrapper

A high-performance, zero-dependency C++/CLI wrapper for SQLite, built specifically for .NET Framework 4.6.1+.

This library offers both low-level control and high-level ORM-style features, providing a fast and efficient bridge between your .NET application and the power of SQLite—without requiring any external dependencies or native runtime installations.

⚠️ Important: This package is built exclusively for .NET Framework 4.6.1+ x64/x86*.
It is not compatible with AnyCPU, ARM, or non-Windows platforms.

⚠️ Visual Studio Package Migration

After installing the NuGet package, ensure that MSQLite.Wrapper appears under your project's References node. If it shows up under Packages, right-click the project and choose:

Tools → NuGet Package Manager → Migrate packages.config to PackageReference

This migration enables proper native interop, IntelliSense, and build reliability for C++/CLI assemblies.

Features

  • Zero Dependencies
    Fully self-contained. Includes the SQLite source directly—no need to ship or install additional native libraries.

  • High Performance
    Built with C++/CLI to minimize overhead between managed (.NET) and native (SQLite) layers.

  • Targeted Runtime Support
    Designed for .NET Framework 4.6.1 and later, with support for both x86 and x64 architectures.

  • ORM-like Convenience
    Includes intuitive methods like InsertReturning, UpdateReturning, and UpsertReturning for seamless object mapping.

  • Low-Level Control
    Exposes prepared Statement objects for precise parameter binding, result iteration, and query execution.

  • Advanced SQLite Features
    Supports transactions, savepoints, incremental BLOB I/O, and full database backup operations.

  • IntelliSense-Ready
    All public APIs are documented with XML comments for rich IntelliSense support in Visual Studio.

🔐 Integrated Encryption & Build Configuration

  • Encryption support via SQLite3 Multiple Ciphers
  • Compiled with AVX instruction set for enhanced performance
  • ✅ All built-in extensions (e.g., compress, sqlar, zipfile) are compiled and automatically registered—no manual .load or sqlite3_*_init() calls required.
  • Custom build flags for optimized behavior and reduced footprint:
SQLITE_DEFAULT_FOREIGN_KEYS=1
HAVE_ISNAN=1
SQLITE_OMIT_LOAD_EXTENSION
SQLITE_OMIT_PROGRESS_CALLBACK
SQLITE_DEFAULT_MEMSTATUS=0
SQLITE_DQS=0
SQLITE_DEFAULT_WAL_SYNCHRONOUS=1
SQLITE_OMIT_DEPRECATED
SQLITE_OMIT_SHARED_CACHE
SQLITE_MAX_EXPR_DEPTH=0
SQLITE_TEMP_STORE=2
SQLITE_CORE=1
SQLITE_ENABLE_EXTFUNC=1
SQLITE_ENABLE_UUID=1
SQLITE_ENABLE_COMPRESS=1
SQLITE_ENABLE_SQLAR=1
SQLITE_ENABLE_ZIPFILE=1
SQLITE_ENABLE_CSV=1
SQLITE3MC_USE_MINIZ=1
SQLITE_ENABLE_DBPAGE_VTAB
SQLITE_ENABLE_REGEXP
SQLITE_ENABLE_SERIES
SQLITE_ENABLE_FILEIO
SQLITE_ENABLE_VSV
SQLITE_ENABLE_SHA3
SQLITE_ENABLE_CARRAY

FastLZ Compression

MSQLite includes built-in support for FastLZ compression via the MSQLite.Fastlz class.

byte[] compressed = Fastlz.Compress(data);
byte[] decompressed = Fastlz.Decompress(compressed);
byte[] compressedText = Fastlz.CompressString("Hello world");
string restored = Fastlz.DecompressString(compressedText);

⚠️ Ensure your project is targeting x64 or x86.

Getting Started

📂 You can find a complete runnable example in Program.cs.

Product Compatible and additional computed target framework versions.
.NET Framework net461 is compatible.  net462 was computed.  net463 was computed.  net47 was computed.  net471 was computed.  net472 was computed.  net48 was computed.  net481 was computed. 
Compatible target framework(s)
Included target framework(s) (in package)
Learn more about Target Frameworks and .NET Standard.

This package has no dependencies.

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
1.0.15 61 10/2/2025
1.0.14 84 10/1/2025
1.0.13 89 9/30/2025
1.0.12 90 9/29/2025
1.0.11 135 9/26/2025
1.0.10 140 9/24/2025
1.0.9 260 9/24/2025
1.0.8 139 9/23/2025
1.0.7 289 9/20/2025

Initial public release of MSQLite.Wrapper.Framework targeting .NET Framework 4.6.1+.

Highlights:
- C++/CLI wrapper around SQLite with managed API for .NET Framework.
- x86 and x64 runtime support with reference assemblies for compatibility.
- Type-safe ExecuteScalar<T> using ConvertTo<T> for reliable value conversion.
- Full XML documentation for public methods, including encoding-aware BindText overloads.
- Integrated encryption support via SQLite3 Multiple Ciphers (AES, ChaCha20, etc.).
- Clean packaging layout with ref/lib separation and PDBs for debugging.
       - Added FastLZ compression support for strings and binary data via MSQLite.Fastlz.