Files
DynamORM/docs/quick-start.md
2026-02-26 07:49:08 +01:00

1.5 KiB

Quick Start

Install and Reference

Reference the DynamORM project or package from your application.

Basic Setup

using System.Data.SQLite;
using DynamORM;

var options =
    DynamicDatabaseOptions.SingleConnection |
    DynamicDatabaseOptions.SingleTransaction |
    DynamicDatabaseOptions.SupportLimitOffset |
    DynamicDatabaseOptions.SupportSchema;

using (var db = new DynamicDatabase(
    SQLiteFactory.Instance,
    "Data Source=app.db;",
    options))
{
    db.DumpCommands = true;

    var users = db.Table("users");
    var total = users.Count(columns: "id");
    var first = users.First(columns: "id,first,last");
}

This setup mirrors DynamORM.Tests/TestsBase.cs.

First Query (Dynamic API)

using (var db = new DynamicDatabase(SQLiteFactory.Instance, "Data Source=app.db;", options))
{
    var row = db.Table("users").Single(id: 19);
    Console.WriteLine(row.first);
}

First Query (Fluent Builder API)

using (var db = new DynamicDatabase(SQLiteFactory.Instance, "Data Source=app.db;", options))
using (var query = db.From("users").Where("id", 19).SelectColumn("first"))
{
    var first = query.ScalarAs<string>();
    Console.WriteLine(first);
}

Insert, Update, Delete

var table = db.Table("users");

table.Insert(code: "201", first: "Juri", last: "Gagarin");
table.Update(values: new { first = "Yuri" }, where: new { code = "201" });
table.Delete(code: "201");

These forms are validated in DynamORM.Tests/Modify/DynamicModificationTests.cs.