Norm.net 2.0.0

There is a newer version of this package available.
See the version list below for details.
dotnet add package Norm.net --version 2.0.0                
NuGet\Install-Package Norm.net -Version 2.0.0                
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="Norm.net" Version="2.0.0" />                
For projects that support PackageReference, copy this XML node into the project file to reference the package.
paket add Norm.net --version 2.0.0                
#r "nuget: Norm.net, 2.0.0"                
#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.
// Install Norm.net as a Cake Addin
#addin nuget:?package=Norm.net&version=2.0.0

// Install Norm.net as a Cake Tool
#tool nuget:?package=Norm.net&version=2.0.0                

Norm micro orm

The fastest database mapper for .NET Standard 2.1

the website with tutorial currently under construction

Performances

See detailed perfomance benchmarks compared to Dapper at performance tests page.

Testing

250 tests for SqlServer, PostgreSQL, SQLite and MySql

tests

Local testing

  • Under each test project there is a testsettings.json.
  • Copy this file and rename it to testsettings.local.json. It will be ignored by git.
  • Set the key Default to the value of your actual, local connection string.
  • The key TestDatabase contains the name of the test database, which is created and dropped on each testing session, so be careful about that.
  • Run dotnet test

Usage

Get it on Nuget

> dotnet add package Norm.net

Use in project

using Norm;

// Start using database connection extensions. Some examples:

// Map results to record:
public record MyRecord(int Id, string Foo, string Bar);
// ...
var records = connection.Query<MyRecord>("select id, foo, bar from my_table");

// Map results to class:
public class MyClass { public int Id { get; init; } public string Foo { get; init; } public string Bar { get; init; } };
// ...
var records = connection.Query<MyClass>("select id, foo, bar from my_table");

// Map single values from tuple to variables:
var (id, foo, bar) = connection.Single<int, string, string>("select id, foor, bar from my_table limit 1");

// Map to enumerable of named tuples:
IEnumerable<(int id, string foo, string bar)> results = connection.Read<int, string, string>("select id, foor, bar from my_table");

// Asynchronously stream values directly from database
await foreach(var (id, foo, bar) in connection.ReadAsync<int, string, string>("select id, foor, bar from my_table"))
{
    //...
}

// etc...

Currently supported platforms

  • .NET Standard 2.1

Support

This is open-source software developed and maintained freely without any compensation whatsoever.

If you find it useful please consider rewarding me on my effort by buying me a beer🍻 or buying me a pizza🍕

Or if you prefer bitcoin: bitcoincash:qp93skpzyxtvw3l3lqqy7egwv8zrszn3wcfygeg0mv

Licence

Copyright (c) Vedran Bilopavlović - VB Consulting and VB Software 2020 This source code is licensed under the MIT license.

Product 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 netcoreapp3.0 was computed.  netcoreapp3.1 was computed. 
.NET Standard netstandard2.1 is compatible. 
MonoAndroid monoandroid was computed. 
MonoMac monomac was computed. 
MonoTouch monotouch was computed. 
Tizen tizen60 was computed. 
Xamarin.iOS xamarinios was computed. 
Xamarin.Mac xamarinmac was computed. 
Xamarin.TVOS xamarintvos was computed. 
Xamarin.WatchOS xamarinwatchos was computed. 
Compatible target framework(s)
Included target framework(s) (in package)
Learn more about Target Frameworks and .NET Standard.
  • .NETStandard 2.1

    • No dependencies.

NuGet packages

This package is not used by any NuGet packages.

GitHub repositories (2)

Showing the top 2 popular GitHub repositories that depend on Norm.net:

Repository Stars
DapperLib/Dapper
Dapper - a simple object mapper for .Net
vb-consulting/Norm.net
Norm.net is an innovative and high-performance Database Access for .NET Standard 2.1 and higher
Version Downloads Last updated
5.4.0 5,173 11/28/2023
5.3.9 1,433 10/7/2023
5.3.8 690 9/7/2023
5.3.7 2,576 7/17/2023
5.3.6 330 7/2/2023
5.3.5 209 7/1/2023
5.3.4 741 5/26/2023
5.3.3 1,346 5/16/2023
5.3.2 26,083 5/3/2023
5.3.1 13,015 11/18/2022
5.3.0 2,810 10/17/2022
5.2.5 460 10/6/2022
5.2.4 430 10/4/2022
5.2.3 4,880 7/8/2022
5.2.2 505 7/5/2022
5.2.1 476 6/26/2022
5.2.0 456 6/25/2022
5.1.0 449 6/20/2022
5.0.1 454 6/16/2022
5.0.0 2,898 5/31/2022
4.3.0 485 5/7/2022
4.2.0 2,442 4/7/2022
4.1.0 21,677 2/23/2022
4.0.0 477 2/15/2022
3.3.13 624 1/25/2022
3.3.12 483 1/25/2022
3.3.11 472 1/21/2022
3.3.10 476 1/20/2022
3.3.9 497 1/11/2022
3.3.8 463 1/11/2022
3.3.7 2,303 12/11/2021
3.3.6 328 12/9/2021
3.3.5 8,492 10/18/2021
3.3.4 1,836 9/15/2021
3.3.3 360 9/4/2021
3.3.2 365 9/4/2021
3.3.1 2,659 7/25/2021
3.3.0 2,984 6/7/2021
3.2.0 11,088 3/30/2021
3.1.2 4,263 1/10/2021
3.1.1 421 1/8/2021
3.1.0 711 12/23/2020
3.0.0 378 12/21/2020
2.0.7 422 12/19/2020
2.0.6 486 12/13/2020
2.0.5 433 12/12/2020
2.0.4 448 12/12/2020
2.0.3 446 12/12/2020
2.0.2 371 12/11/2020
2.0.1 378 12/11/2020
2.0.0 421 12/9/2020
1.7.0 3,558 11/26/2020
1.6.0 814 11/23/2020
1.5.2 4,254 5/30/2020
1.5.1 466 5/13/2020
1.5.0 677 3/17/2020
1.4.0 468 3/6/2020
1.3.0 526 3/4/2020
1.2.0 638 1/29/2020
1.1.9 487 1/28/2020
1.1.8 502 1/28/2020
1.1.7 524 12/6/2019
1.1.6 493 12/1/2019
1.1.5 516 10/26/2019
1.1.4 481 10/26/2019
1.1.3 505 10/23/2019
1.1.2 503 10/7/2019
1.1.1 487 10/7/2019
1.1.0 495 10/5/2019
1.0.2 558 10/2/2019