CSharpDB.Data
1.2.0
dotnet add package CSharpDB.Data --version 1.2.0
NuGet\Install-Package CSharpDB.Data -Version 1.2.0
<PackageReference Include="CSharpDB.Data" Version="1.2.0" />
<PackageVersion Include="CSharpDB.Data" Version="1.2.0" />
<PackageReference Include="CSharpDB.Data" />
paket add CSharpDB.Data --version 1.2.0
#r "nuget: CSharpDB.Data, 1.2.0"
#:package CSharpDB.Data@1.2.0
#addin nuget:?package=CSharpDB.Data&version=1.2.0
#tool nuget:?package=CSharpDB.Data&version=1.2.0
CSharpDB.Data
ADO.NET provider for the CSharpDB embedded database engine. Standard DbConnection, DbCommand, and DbDataReader with parameterized queries and transactions.
Overview
CSharpDB.Data provides a standard System.Data.Common (ADO.NET) data provider for CSharpDB. Use familiar DbConnection/DbCommand/DbDataReader patterns to query and modify your embedded database. Supports parameterized queries, transactions, prepared statements, and schema introspection.
Key Types
| Type | Description |
|---|---|
CSharpDbConnection |
DbConnection that opens a Database instance from a file path |
CSharpDbCommand |
DbCommand with prepared statement support and parameter binding |
CSharpDbDataReader |
DbDataReader with async iteration, typed getters, and HasRows |
CSharpDbTransaction |
DbTransaction with auto-rollback on dispose |
CSharpDbFactory |
Singleton DbProviderFactory for creating connections and commands |
CSharpDbParameter |
Parameter support with AddWithValue convenience method |
Usage
using CSharpDB.Data;
// Open a connection
await using var connection = new CSharpDbConnection("Data Source=myapp.db");
await connection.OpenAsync();
// Create a table
await using var cmd = connection.CreateCommand();
cmd.CommandText = """
CREATE TABLE products (
id INTEGER PRIMARY KEY,
name TEXT,
price REAL
)
""";
await cmd.ExecuteNonQueryAsync();
// Insert with parameters
cmd.CommandText = "INSERT INTO products VALUES (@id, @name, @price)";
cmd.Parameters.AddWithValue("@id", 1);
cmd.Parameters.AddWithValue("@name", "Widget");
cmd.Parameters.AddWithValue("@price", 9.99);
await cmd.ExecuteNonQueryAsync();
// Query with a data reader
cmd.CommandText = "SELECT name, price FROM products WHERE price < @max";
cmd.Parameters.Clear();
cmd.Parameters.AddWithValue("@max", 50.0);
await using var reader = await cmd.ExecuteReaderAsync();
while (await reader.ReadAsync())
{
Console.WriteLine($"{reader.GetString(0)}: ${reader.GetDouble(1):F2}");
}
// Transactions
await using var tx = await connection.BeginTransactionAsync();
cmd.Transaction = (CSharpDbTransaction)tx;
cmd.CommandText = "INSERT INTO products VALUES (2, 'Gadget', 19.99)";
await cmd.ExecuteNonQueryAsync();
await tx.CommitAsync();
// Schema introspection
var csConn = (CSharpDbConnection)connection;
var tables = await csConn.GetTableNames();
var schema = await csConn.GetTableSchema("products");
Using DbProviderFactory
var factory = CSharpDbFactory.Instance;
await using var conn = factory.CreateConnection();
conn.ConnectionString = "Data Source=myapp.db";
await conn.OpenAsync();
Installation
dotnet add package CSharpDB.Data
Dependencies
CSharpDB.Engine- embedded database engine
Related Packages
| Package | Description |
|---|---|
| CSharpDB.Engine | Underlying embedded database engine |
| CSharpDB.Service | Thread-safe service layer built on this provider |
License
MIT - see LICENSE for details.
| Product | Versions Compatible and additional computed target framework versions. |
|---|---|
| .NET | net10.0 is compatible. 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. |
-
net10.0
- CSharpDB.Engine (>= 1.2.0)
NuGet packages (1)
Showing the top 1 NuGet packages that depend on CSharpDB.Data:
| Package | Downloads |
|---|---|
|
CSharpDB.Service
Thread-safe service layer for hosting CSharpDB in ASP.NET Core, Blazor, or MCP server applications. |
GitHub repositories
This package is not used by any popular GitHub repositories.